精华内容
下载资源
问答
  • 下列选项中是正确的方法声明的是?() 正确答案: A B C D A protected abstract void f1(); B public final void f1() {} C static final void fq(){} D private void f1() {} 1.抽象方法只能定义在...

    下列选项中是正确的方法声明的是?()

    正确答案: A B C D

    • A protected abstract void f1();

    • B public final void f1() {}

    • C static final void fq(){}

    • D private void f1() {}


    • 1.抽象方法只能定义在抽象类中,抽象方法和抽象类必须由abstract修饰,abstract关键字只能描述类和方法,不能描述变量。抽象方法只定义方法声明,不定义方法实现。抽象类不可以被实例化(创建对象),只有通过子类继承抽象类并覆盖抽象类中的所有抽象方法后,该子类才可以被实例化,否则该子类还是一个抽象类。抽象类中有构造函数用于给子类对象进行初始化,同时抽象类中可以含有非抽象方法。abstract关键字不可以与final,private,static关键字共存
      • 因为被final修饰的方法不可以被重写,意味着子类不可以重写该方法,如果abstract和final共同修饰父类中的方法,子类要实现抽象方法(abstract的作用),而final又不让该方法重写,这相互矛盾。
      • 如果private和abstract共同修饰父类中的方法,private修饰则该方法不可以被子类访问,但是abstract修饰需要子类去实现,两者产生矛盾。
      • 如果static和abstract共同修饰父类中的方法,static表示是静态的方法,随着类的加载而加载,则该方法不需要在子类中去实现,这与abstract关键字矛盾。
    • 2.static用于修饰成员变量和成员函数,想要实现对象中的共性数据的对象共享,可以将这个数据进行静态修饰,被静态修饰的成员可以直接被类名调用,静态随着类的加载而加载,而且优先于对象存在。静态方法只能访问静态成员(静态方法和静态变量),不可以访问非静态成员,这是因为静态方法加载时,优先于对象存在,所以没有办法访问对象中的成员静态方法中不能使用this和super关键字,因为this代表本类对象,super代表父类对象,而静态时,有可能没有对象存在,所以this和super无法使用。
    • 3.final关键字可以修饰类,方法,变量(成员变量内,局部变量,静态变量),被final修饰的类是一个最终类,不可以被继承,被final修饰的方法是一个最终方法,不可以被覆盖,但是可以被继承。被final修饰的变量只能是一个常量,只能赋值一次。 内部类被定义在类中的局部位置上时,只能访问局部被final修饰的局部变量。
    展开全文
  • 面试题:下面哪个对声明是错误的? A、class MyClass extends MySuperClass1,MySuperClass2{} B、public class MyClass{} C、abstract class MyClass implements YourInterface1,YourInterface2{} D、private...

    题目:

    面试题:下面哪个对类的声明是错误的?

    A、class MyClass extends MySuperClass1,MySuperClass2{}
    
    B、public class MyClass{}
    
    C、abstract class MyClass implements YourInterface1,YourInterface2{}
    
    D、private class MyClass{}
    
    E、class MyClass extends MySuperClass implements YourInterface{}
    

    结果:A

    解释:

    A:类只支持单继承,所以A错误。

    B:public是类修饰符,class表示这是个类,MyClass是类名,B正确。

    C:abstract是抽象类的类修饰符,class表示这是个类,MyClass是类名,类支持多实现,并且前面的public可以写可以不写,如果写的话需要保证文件名和类名一致,C正确。

    D:内部类可以使用public、protected、默认修饰符、private修饰,所以D正确

    E:可访问控制符可以不写,类支持单继承多实现,所以E正确

    展开全文
  • const修饰的成员函数,则该成员函数不能修改中任何非const成员函数。一般写在函数的最后来修饰。 解析: *const(*号)左边放,我是指针变量指向常量; const(*号)右边放,我是指针常量指向变量; const(*号...

    void print( ) const;
    const void print( );
    void const print( );
    void print(const);const修饰类的成员函数,则该成员函数不能修改类中任何非const成员函数。一般写在函数的最后来修饰。

    解析:
    *const(*号)左边放,我是指针变量指向常量;

    • const(*号)右边放,我是指针常量指向变量;
    • const(*号)两边放,我是指针常量指向常量;
    • const在*的左边,则指针指向的变量的值不可直接通过指针改变(可以通过其他途径改变);
    • 在*的右边,则指针的指向不可变。简记为“左定值,右定向”。
    展开全文
  • 定义一个学生,Student有姓名,学号,选学的课程列表 定义一个课程:课程名称,课程分数 (1)初始化一个学生,选择了三门课程,并添加到学生的属性中 (2)实现统计学生的总分功能 1.正...
    package exam2;
    
    import java.util.ArrayList;
    import java.util.List;
    
    /**
    	编写一个Java应用程序,该程序包括3个类:
    	定义一个学生类,Student有姓名,学号,选学的课程列表
    	定义一个课程类:课程名称,课程分数 
    	(1)初始化一个学生,选择了三门课程,并添加到学生的属性中
    	(2)实现统计学生的总分功能
    	
    	1.正确编写2个类(5分)
    	2.统计学生的总分功能(5分)
     */
    public class Test {
    	public static void main(String[] args) {
    
    		List<Course> courses = new ArrayList<>();
    
    		// 初始化3门课程及分数
    		Course course1 = new Course("java", 80);
    		Course course2 = new Course("Math", 60);
    		Course course3 = new Course("English", 90);
    
    		// 课程对象添加到集合
    		courses.add(course1);
    		courses.add(course2);
    		courses.add(course3);
    
    		// 初始化学生对象
    		Student student = new Student("tom", "2015101", courses);
    		// student.setStuid("2015101");
    		// student.setStuname("tom");
    		// student.setCourses(courses);
    
    		// System.out.println(student);
    
    		// (2)实现统计 学生 的总分功能
    
    		int sum = sumScore(courses);
    		System.out.println(student.getStuname() + "学生总分:" + sum);
    
    	}
    
    	private static int sumScore(List<Course> courses) {
    		int sum = 0;
    		// 用课程对象,来获取课程的分数
    		for (Course course : courses) {
    			sum += course.getScore();
    		}
    		return sum;
    	}
    }
    package exam2;
    
    import java.util.List;
    
    public class Student {
    	// 定义一个学生类,Student有姓名,学号,选学的课程列表
    	private String stuname;
    	private String stuid;
    	private List<Course> courses;
    
    	public Student() {
    	}
    
    	public Student(String stuname, String stuid, List<Course> courses) {
    		this.stuname = stuname;
    		this.stuid = stuid;
    		this.courses = courses;
    	}
    
    	public String getStuname() {
    		return stuname;
    	}
    
    	public void setStuname(String stuname) {
    		this.stuname = stuname;
    	}
    
    	public String getStuid() {
    		return stuid;
    	}
    
    	public void setStuid(String stuid) {
    		this.stuid = stuid;
    	}
    
    	public List<Course> getCourses() {
    		return courses;
    	}
    
    	public void setCourses(List<Course> courses) {
    		this.courses = courses;
    	}
    
    	@Override
    	public String toString() {
    		return "学生姓名=" + stuname + ",学号=" + stuid + ", 课程=" + courses;
    	}
    
    }
    package exam2;
    
    public class Course {
    	//定义一个课程类:课程名称,课程分数
    	private String cname;
    	private int score;
    	public Course() {
    	}
    	public Course(String cname, int score) {
    		this.cname = cname;
    		this.score = score;
    	}
    	public String getCname() {
    		return cname;
    	}
    	public void setCname(String cname) {
    		this.cname = cname;
    	}
    	public int getScore() {
    		return score;
    	}
    	public void setScore(int score) {
    		this.score = score;
    	}
    	@Override
    	public String toString() {
    		return "[课程名称=" + cname + ", 课程分数=" + score + "]";
    	}
    	
    }
    

    /*
    运行:
    tom学生总分:230
    */



    展开全文
  • 以下选项的叙述中,正确的是循环队列有队头和队尾两个指针,因此,循环队列是非线性结构在循环队列中,只需要队头指针就能反映队列中元素的动态变化情况在循环队列中,只需要队尾指针就能反映队列中元素的动态变化...
  • 【单选题】Python3中,使用input()函数可以获取用户从键盘上输入的数据,不管用户输入的内容是什么,该数据的默认数据类型为____________。... >>> a=1 >>> b=a=a+1【多选题】关于输卵管的描述,正确的是( )【判断...
  • 例如__init__为的构造函数,一般应避免使用 B:以数字开头,错误 C:使用了',不是字母、下划线或数字 D:str是保留关键字 3. 在下列Python语句中非法的是 A. x = y =1 B. x = (y =1) C. x,y = y,x B. x=1;y=1 ...
  • 仅以客观的和诚实的方式发表公开声明 作为忠诚的代理人和受托人为雇主和客户从事职业工作 刘明是负责再生水厂建设项目的设计工程师,他很喜欢这个工作,他的设计方案并未得到业内经验丰富的工程师审核,...
  • 前端面试题

    万次阅读 多人点赞 2019-08-08 11:49:01
    要将页面的状态栏中显示“已经选中该文本框”,下列JavaScript语句正确的是( A ) 67 以下哪条语句会产生运行错误:(AD) 67 以下哪个单词不属于javascript保留字:(B) 67 请选择结果为真的表达式:(C) ...
  • 研究生工程伦理课程答案整理

    万次阅读 2019-12-17 09:55:12
    研究生工程伦理课程,因为考试需要,自己整理的题库与答案,供自己以后复习时使用… 1.工程与伦理–第一章习题 ...正确答案:功利论 契约论 义务论 德性论 2.多选(1/1分) 工程活动集成了多种要素,包...
  • 测试开发笔记

    万次阅读 多人点赞 2019-11-14 17:11:58
    分类 测试过程 参与人员 目的 过程主要内容 针对项目软件 验收测试 开发人员:提供满足验收要求的软件或系统,或用户需要的相关开发文档 测试人员: 1、搭建验收测试环境 2、准备验收测试用例 3、准备用户需要的...
  • 下列哪种异常是检查型异常,需要在编写程序时声明? ANullPointerException BClassCastException CFileNotFoundException DIndexOutOfBoundsException 正确答案:C 1. 粉红色的是受检查的异常(checked ...
  • 前端面试锦集

    千次阅读 多人点赞 2019-07-20 13:41:45
    这些运算符的作用就是将匿名函数或函数声明转换为函数表达式,如下图所示,函数体是函数声明的形式,使用运算符将其转换为函数表达式之后就可达到立即执行效果。 使用立即执行函数的好处:通过定义一个匿名函数,...
  • 4399前端笔试题2019

    万次阅读 热门讨论 2019-09-08 23:47:55
    文章导航 免责声明 题目分享 一、单选题 二、技术问答题 三、编程题 四、主观问答题 免责声明 有关本博文试题源自4399校园招聘2019,仅供参考,如有侵权,请告知删除! 题目分享 一、单选题 以下不是 TCP 具有的能力...
  • 下面重载乘法运算符的函数原型声明正确的是: 正确答案: A B D 你的答案: D (错误) MyClass operator *(double ,MyClass); MyClass operator *(MyClass ,MyClass); MyClass operator *...
  • 《数据库原理》— 数据库系统概论第五版习题解析

    万次阅读 多人点赞 2017-05-29 14:57:48
    关系数据模型具有下列优点: ( l )关系模型与非关系模型不同,它是建立在严格的数学概念的基础上的。 ( 2 )关系模型的概念单一,无论实体还是实体之间的联系都用关系表示,操作的对象和操作的结果都是关系,...
  • C#基础教程-c#实例教程,适合初学者

    万次阅读 多人点赞 2016-08-22 11:13:24
    static void Main()是类Welcome中定义的主函数。静态方法意义见以后章节。 程序所完成的输入输出功能是通过Console类来完成的,Console是在名字空间System中已经定义好的一个类。Console类有两个最基本的方法...
  • 数据结构(C++)有关练习题

    热门讨论 2008-01-02 11:27:18
    实验一 复习C++有关知识 实验目的: 通过实验掌握下列知识: 1、复习C++有关基本知识; 2、熟悉VC编程、编译和调试环境; 内容及步骤: 编写一个Complex,定义复数的加法、减法、乘法和除法运算,...
  • WPF开发教程

    万次阅读 多人点赞 2019-07-02 23:13:20
    本主题提供 Windows Presentation Foundation (WPF) 层次结构的指导教程,涵盖了 WPF 的大部分主要子系统,并描述它们是如何交互的。本主题还详细介绍了 WPF 架构师所做的一些选择。 System.Object WPF 主要...
  • 假设A又如下定义, 设a是A的一个实例, 下列哪个调用是错误的?() public class A { public int i; static String s; void method1(){} static void method2(){} } A. System.out.println(a.i); B. a.method1(); C....
  • Java笔试面试题整理第八波

    万次阅读 多人点赞 2016-06-14 11:07:41
    ,如果开发者没有给其赋初值,在编译时,JVM自动会给非final修饰的成员变量赋初值,我们在的成员方法中就可以直接使用、运算了。 对于 final修饰 的 成员变量 ,必须在(1) 定义的时候初始化 ,(2)或者 在...
  • 已知类A是类B的友元,类B是类C的友元,则: A.类A一定是类C的友元 B.类C的成员函数可以访问类B的对象的任何成员 C.类A的成员函数可以访问类B的对象的任何成员 D.类C一定是类A的友元 答案:C 友元类是单向的(不可逆...
  • 都是Throwable的子类:1.Exception(异常):是程序本身可以处理的异常。...3.检查异常(编译器要求必须处置的异常):除了Error,RuntimeException及其子类以外,其他的Exception及其子类都属于可查...
  • c++全局变量的正确声明

    千次阅读 2016-04-12 10:35:51
    C++中全局变量声明错误情况 造成LNK2005错误主要有以下几种情况:   1.重复定义全局变量。可能存在两种情况:   A、对于一些初学编程的程序员,有时候会以为需要使用全局变量的地方就可以使用定义申明...
  • 在C++语言中,以下说法正确的是()正确答案: A D 你的答案: A B C (错误)多态是通过虚表实现的构造函数可以声明为虚函数析构函数不可以声明为虚函数抽象中至少包含一个纯虚函数C++中 的虚函数的作用主要是实现了...
  • 1.下面有关static变量和实例变量的描述,正确的有? static变量又叫静态成员变量,它不需要创建对象就可以已经在内存中存在了 在创建实例对象的时候,内存中会为每一个实例对象的每一个非静态成员变量...
  • 4. 关于protected修饰的成员变量,以下说法正确的是 A 可以被该的自身、与它在一个包中的其他、在其他包中的该的子类所访问 B 只能被该本身和该的所有的子类访问 C 只能被该自身所访问 D 只能被...
  • 在c++中,下列描述错误的是( )

    千次阅读 2020-09-12 20:42:12
    B静态成员是类的成员 C静态成员不能是虚函数 D静态成员函数不能直接访问非静态成员 答案:A 解析: 静态的使用注意事项: 1.静态方法只能访问静态成员(包括成员变量和成员方法) 非静态方法可以访问静态也可以访问...
  • java面试题38 以下关于 abstract 关键字的说法,正确的是() A abstract 可以与final 并列修饰同一个。 B abstract 中不可以有private的成员。 C abstract 中必须全部是abstract方法。 D abstract ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 71,528
精华内容 28,611
热门标签
关键字:

下列类声明正确的是