考试高频率考试题
|
java类名命名规则
1.由数字,字母,下划线,美元符号,组成
2.不能以数字开头
3.不能是关键字但是可以包含
4.每个单词首字母大写
5.见名知意
|
java变量名
1.数字字母下划线美元符号组成
2.不能是关键字但是可以包含
3.不能以数字开头
4.见名知意
5.全小写
注意:
1.作用域相同的变量名不能=允许重复
2.局部变量没有初始化不能使用
3.一条语句可以定义多个变量但是不建议使用
|
谈谈对if三种语句看法
1.if单支语句:单只情况----如果if后面的小括号为true就执行后面花括号的语句
2.if...else:双支情况----如果if后面的布尔表达式为true就执行花括号里面的语句,否则执行else语句。
3.if..else if...else:多支情况:---符合哪一个if后面的判断条件就执行哪一个条件后面的大括号语句,都不满足就执行1else里面的语句、
|
基本数据类型
1.整数型:byte,short,int,long
2.浮点型:float,double
3.char
4.boolean
|
return可以终止for循环吗为什么?
可以
return作用:
1.终止当前执行方法,for循环一般都在方法内部
2.可以返回方法返回值,return语句声明在for循环内,可以返回for循环结构之外的数据值,无返回值的时候单独使用return结束方法和for循环。
3.return结束for循环太过于强硬,建议使用break和continue;
||||||||
||||||||
||||||||
||||||||
switch可以适用于哪些情况
1.适用于byte,因为byte可以自动向int转型
2.不适用于long类型数据
3.适用于String类型;JDK1.7之后
|
成员变量和局部变量的区别
1.在类中的位置不同
----成员:类中方法外
----局部:方法内
2.作用范围不一样
----成员:全类
----局部:仅限于方法内部
3.初始化值不同
----成员:有默认值
----局部:没有默认值
4.内存中的位置:
----成员:堆内存中
----局部:栈内存中
5.生命周期不同:
----成员:随着对象创建而存在,随着对象消失而消失
----局部:随着方法的调用而创建,随着方法的调用完毕而结束
|
对static关键字的理解
1.关于static关键字,可以用于修饰成员属性和成员方法,被修饰着后的成员是属于类的是静态的
2.被static修饰的变量称为成员变量,属于类,任何对象都可以对他进行更改,也可以在不创建对象的情况下通过类名.变量名调用
3.静态方法可以直接访问静态方法和静态变量
静态方法不能直接访问普通方法和普通变量
普通方法可以直接访问静态方法和静态变量
静态方法中不能使用this关机那字
4.static修饰的内容:
随着类的加载而加载,只能加载一次
存储在以静态域,可以直接被类名调用
他优先于对象存在,所以可以被所有对象共享和改变
|
谈谈你对构造方法的理解
1.当对象呗创建构造方法用来初始化对象。给对象成员变量赋值
2.当没有自定义构造方法,系统默认一个无参构造,自定义构造方法之后默认无参构造消失
3.构造方法没有返回值,void都没有,不能return一个具体值,方法名和类名一样
4.构造方法可以重载
|||||
|||||
|||||
|||||
构造方法和普通方法的区别
1.构造方法不可以被继承,普通方法可以被继承
2.子类调用成员方法的时候不需要考虑是否需要调用父类的成员方法,但是子类再调用构造方法的时候需要先调用父类构造方法,如果父类里面没有无参构造,需要调用父类的带参构造方法
|
方法重载和方法重写的区别
1.方法重载:同一个类中,方法名一样,参数列表不一样,返回值无关,修饰符无关
2.方法重写:子类中,方法名一样,参数列表一样,返回值一样,修饰符大于或等于父类修饰符权限。
|
this和super的作用
this:指代当前类的对象,当方法内部的局部变量,和类中的成员变量重名的时候,需要通过this关键字啦指代类中的成员变量,可以调用类中的成员方法,也可以通过this()调用构造方法。
super:指代父类中的一个引用,可以通过super来调用父类中的成员变量,成员方法,通过super()来调用父类当中的构造方法。|
|
java中一个类被声明为final类型,表示了什么意思
final表示最终的,不可改变的意思,所以final修饰的类,类中的成员信息不可改变,表示该类没有子类,不允许被任何一个类继承。
|
接口和类
接口可以继承接口,抽象类可以实现接口,抽象类可以继承类
|
抽象类和接口的异同
相同
1:被子类继承或实现之后必须重写所有的抽象方法
2:都不能实例化自身,只能实例化子类对象
3:都是顶级的,只能被继承或实现
不同:
1.抽象类可以有成员变量,接口只有常量
2.抽象类有构造方法,接口没有构造方法
3.类与类之间,单继承,接口也接口之间多继承
4.一个类只能继承一个类,一个类可以实现很多子类。
|
abstract修饰符的理解,对Static代码块的理解
abstract修饰符:意思是抽象的,可以修饰类或者方法
修饰类的时候:属于抽象类,抽象类里面可以声明抽象方法,但是抽象类不能直接实例化对象,需要借助于他的子类才可以调用类中成员方法。修饰方法时,为抽象方法,没有具体的方法内容,一般是需要被重写的。
static代码块:静态代码块,优先于构造方法和main方法执行,并且程序中只会加载一次。
|
谈谈你对多态的理解
理解:
多态是面向对象三大基本特征之一,多态描述的是当一个对象能变先出多种形态的时候就说明这个食物具有多态性。
多态具体表现:
1.父类引用指向子类地址,使用多态让程序有更好的扩展性和可延续性。
2.多态出现前提:1.子类继承父类或者实现接口。。2.方法重写,父类引用指向子类地址。
|
谈谈你对内部类和外部类成员访问情况以及匿名内部类的见解
见解:内部类描述的是一个失误包含另一个事物,可以使用内部类结构设计
内部类:范围成员内部类,局部内部类
成员内部类:定义在类中方法外,充当成员信息,
1.内部类访问外部类的时候:直接访问外部类的属性和方法
2.外部类访问内部类的时候:创建内部类对象,通过内部对象调用。
内部类本质:
带着具体实现父接或者父类的匿名子对象。当方法的形式参数是接口或者抽象类时,可以使用匿名内部类来进行参数传递。