Java中的几个问题

Java中的几个问题
1. super()与this()的区别?

2. 作用域public,protected,private,以及不写时的区别?

3. 在JAVA中,如何跳出当前的多重嵌套循环?
把continue和break的作用都写出来

4. 一个“.java”源文件中是否可以包括多个类(不是内部类)?有什么限制?
1).可以;2).最多只能有一个public类;3).文件名必须和public的类名一致。

5.排序都有哪几种方法?
插入排序、交换排序(冒泡排序和快速排序) 、归并排序、选择排序。

6. Overload(编译时的多态)和Override(运行时的多态)的区别?

7. Final类有什么特点?

8. &和&&的区别?

9. GC是什么? 为什么要有GC?

10. Math.round(11.5)等於多少? Math.round(-11.5)等於多少?
1. super()与this()的区别?
=======================================================
对应构造方法
this(有参数/无参数) 用于调用本类相应的构造函数
super(有参数/无参数) 用于调用父类相滑念应的构造函数

this表示当前对象,也就是当前类对象,super表示当前类的父类。

2. 作用域public,protected,private,以及不写时的区别?
=======================================================
public 指的是在任何地方都可以访问到
protected 同一个类中 同一个包中或者不同包中的子类对象
private 只有在同一个类中
对应给出个表格
同一个类中 同一个包中 不同包中子类对象 任何地方
Private Yes
Default Yes Yes
Protected Yes Yes Yes
Public Yes Yes Yes Yes

3. 在JAVA中,如何跳出当前的多重嵌套循环?
=======================================================
把continue和break的作用都写出来

break语句的作用
(1) 只能在循环体内和switch语句体内使用break语句。
(2) 当break出现在循环体中的switch语句体内时,其作用只是跳出该switch语句体。
(3) 当break出现在循环体中,但并不在switch语句体内时,则在执行break后,跳出本层循环体。
(4) 在循环结构中,应用break语句使流程跳出本层循环体,从而提前结束本层循环。
continue语句作用
(1) continue语句的一般形式为:contonue;
(2) 其作用是结束本次循环,即跳过本次循环体中余下尚未执行的语句,接着再一次进行循环的条件判定。
for(int i = 1; i <= 10; i++){
if(i = 5){
continue;
}else{
System.out.println(i)
}
}
如果是这样,那么当到5的时候不打印,其他打印 1,2,3,4,6,7,8,9,10 没有5
for(int i = 1; i <= 10; i++){
if(i >= 5){
continue;
}else{
System.out.println(i)
}
}
如果这样,那信凯困么打印1,2,3,4

4. 一个“.java”源文件中是否可以包括多个类(不是内部类)?有什么限制?
=======================================================
1).可以;2).最多只能有一个public类;3).文件名必须和public的类名一致。
这个说的很正确

5.排序都有哪几种方法?
=======================================================
插入排序、交换排序(冒泡排序和快速排序) 、归并排序、选择排序。

6. Overload(编译时的多态)和Override(运行时的多态)的区别?
=======================================================
overload是方法重载,用在同一个类中,是几个方法的名字相同,返回值相同,但是参数列表不同,举例来说就像构造函数,可以后多个构造函数,并且孙猛每个的参数列表都不同,这样可以用多种方式构造对象。

override是方法覆盖,用在父子类中,是方法名字相同,参数列表也相同,声明形式都相同,但是子类方法的权限不允许小于父类,不允许抛出比父类更多的异常。调用子类的方法与父类的同名方法无关,在子类中完全覆盖了父类的方法。

7. Final类有什么特点?
=======================================================
加于类,方法前面的话,作用为限制继承
加于属性前面,不可变,初始化时机只有两个,其一,在定义的时候;其二,在构造方法里面初始化
加于本地变量,方法参数前面:
不能再被赋值(变量,私有类型)
不能被整体替换为另一个内存,但里面的属性可以修改(类)
不可变类(String,BigDecimal)虽为类,但无整体部分可言,所以不能再被赋值

8. &和&&的区别?
=======================================================
&位运算符 & 按位与(AND) c = a & b a和b位数比较 同1出1 否则出0
&&且 a&&b则是当 a为真 且b为真的时候才为真 如果a不为真,那么不去判断b结果为假

9. GC是什么? 为什么要有GC?
=======================================================
GC是垃圾收集的意思(Gabage Collection),内存处理是编程人员容易出现问题的地方,忘记或者错误的内存回收会导致程序或系统的不稳定甚至崩溃,Java提供的GC功能可以自动监测对象是否超过作用域从而达到自动回收内存的目的,Java语言没有提供释放已分配内存的显示操作方法。

10. Math.round(11.5)等於多少? Math.round(-11.5)等於多少
=======================================================
Math.round(11.5) = 12
Math.round(-11.5) = -11
1 this 类自身 super父类
2 访问权限
private 类内部访问
protected 自身及子类
default不写 同包访问
public 不限
3 continue跳到下次循环break结束循环
6 overload是重载,指同名方法不同参数列override是引用春雹卜类型实际调用时有所指向的实力决定实际的功能,而不是引用自己的类型典型应用时父类/借口类型变量指向派生实例,实际并不是父类的方法
7 final不可重写 可继承
8 &位运算&&逻辑运算
9 gc垃圾肆埋收集,java没有delete,不用的实例有扒穗gc回收
10 12 -11
1. super()与this()的区别?
super()代表父类的构造方法;this()代表当前类的构造方法。

2. 作用域public,protected,private,以及不写时的区别?
public声明的变量及方法,表明在整个包内包外都可使用。
private 声明的变量及方法,只在声明的类内可以使用。
protected包外不可使用。包内可以使用。
不使用关键字默认为包内使用。
另外注意在继承的时候,他们的区别。
public 声明的在子类变为public
protected 声明的子类变为private
private 声明的在子类中郑贺差不可用

3. 在JAVA中,如何跳出当前喊皮的多重嵌套循环?
break是跳出当前循环,执行下一条语句;continue是结束此次循环,继续下一次循环。

4. 一个“.java”源文件中是否可以包括多个类(不是内部类)?有什么限制?
1).可以;2).最多只能有一个public类;3).文件名必须和public的类名一致。

5.排序都有哪几种方法?
插入排序、交换排序(冒泡排序和快速排序) 、归并排序、选择排序。

6. Overload(编译时的多态)和Override(运行时拍氏的多态)的区别?
overload(重载)是同一个类中的多态,override(覆盖)是父子类之间的多态。

7. Final类有什么特点?
Final类不能有子类。

8. &和&&的区别?
&是位运算与;&&是boolean运算与,并且有短路功能。

9. GC是什么? 为什么要有GC?
GC是垃圾收集器。Java 程序员不用担心内存管理,因为垃圾收集器会自动进行管理。要请求垃圾收集,可以调用下面的方法之一:System.gc();Runtime.getRuntime().gc();

10. Math.round(11.5)等於多少? Math.round(-11.5)等於多少?
Math.round(11.5)等于12;Math.round(-11.5)等于-11.
1、super()是引用父类的构造方法,this()是调用当前方法的对象的引用。
2、public 可以在任何区域调用,protected只有本包内或子类中可以调用,private只有在本类中才能调用,不声明时只能在本包中调用
3、continue跳出当前循环进入下一次循环,break跳出整个循环体
4、可以包括多个类,最多只能有一个public类
5、(不知道你写了那么多是什么意思)【选择题?】(java排序的方法很多的,还有自我封装的方法sort())
6、方法的重写Overriding和重载Overloading是Java多态性的不同表现。重写Overriding是父类与子类之间多态性的一种表现,重载Overloading是一个类中多态性的一种表现。如果在子类中定义某方法与其父类有相同的名称和参数,我们说该方法被重写 (Overriding)。子类的对象使用这个方法时,将调用子类中的定义,对它而言,父类中的定义如同被"屏蔽"了。如果在一个类中定义了多个同名的方法,它们或有不同的参数个数或有不同的参数类型,则称为方法的重载(Overloading)。Overloaded的方法是可以改变返回值的类型。
7、final 用于声明属性,方法和类,分别表示属性不可变,方法不可覆盖,类不可继承。
8、&是位运算符,表示按位与运算,&&是逻辑运算符,档物握表示逻辑与(and)。
9、GC是垃圾收集的意思(Gabage Collection),内存蚂局处理是编程人员容易出现问题的地方,忘记或者错误的内存行庆回收会导致程序或系统的不稳定甚至崩溃,Java提供的GC功能可以自动监测对象是否超过作用域从而达到自动回收内存的目的,Java语言没有提供释放已分配内存的显示操作方法。
10、round()方法是四舍五入,这个不用解释了吧Math.round(11.5)=12,Math.round(-11.5)=-11
1. super()与this()的区别?
super();是父类的构造方法,this()是实际运行中本身这个对象的构造方法

2. 作用域public,protected,private,以及不写时的区别?
private 私有属性
protected 被保护的属性,允许同一个package的访问,孙猛以及子类访问
public 公开的属性,可以被任何类访问
啥都不写的那种,运行同一个package的访问,包外的任信凯困何类都不能访问它,

3. 在JAVA中,如何跳出当前的多重嵌套循环?
把continue和break的作用都写出来
continue是忽略continue后面的代码,结束本次循环,开始下一次循环
break是跳出当前循环。

4. 一个“.java”源文件中是否可以包括多个类(不是内部类)?有什么限制?
1).可以;2).最多只能有一个public类;3).文件名必须和public的类名一致。

5.排序都有哪几种方法?
插入排序、交换排序(冒泡排序和快速排序) 、归并排序、选择排序。

6. Overload(编译时的多态)和Override(运行时的多态)的区别?
借用1楼
overload是重载,指同名方法不同参数列表。
而override是引用类型实际调用时有所指向的实例决定实际的功能,
而不是引用自己的类型。典型应用是父类/接口类型变量指向派生实例,实际并不是父类的方法。
其实这个问题不是很明了。如果是编译时 运行时,一般提到的是类对象,而不是overload, overload是面向对象的,主要针对方法的。
最常见的编译时 运行时的差别是这样的。
List list = new ArrayList(); 编译的时候list是作为List类型的,而实际运行中是作为ArrayList类型来处理的。

7. Final类有什么特点?
final类是不可继承的,也就是不可能有子类。

8. &和&&的区别?
&位运算,是以补码的形式运算
&&逻辑运算,是按照逻辑运算的

9. GC是什么? 为什么要有GC?
GC = Garbage collection. JAVA的一个滑念显著特点就是有垃圾自动回收机制,从而解放了程序员。

10. Math.round(11.5)等於多少? Math.round(-11.5)等於多少?
Math.round(11.5) = 12
Math.round(-11.5) = -11
3.continue是跳过本次循环,不执行continue后面的代码,直接执行下次循环
break是退出当前层次的循环(多重循环只退出所在层的循环)
4 一个“.java”源文件中是此拿饥否可以包括多个类(不是内部类)?有什么限制?
1).可以;2).最多只能有一个public类;3).文件名必须和public的类名一致。
以上都是的,不一定是内部类,可以是匿名类,或是并森返排类
5.排序都有哪几种方法?
插敏圆入排序、交换排序(冒泡排序和快速排序) 、归并排序、选择排序。
以上都是,还是堆排序,希尔排序等
← 上一篇: 下一篇: →