javaSE_基础知识测试题分享

package 简答;

public class Test {
	/*
	 * 1.简述重写和重载:在一个类里面
	 * 	重写: 1. 方法名与类名相同,
	 * 		  2. 并且参数相同,
	 * 		  3. 访问修饰符应当与类的访问修饰符相同或者更宽泛
	 * 
	 * 重载:   1. 方法名相同,
	 * 		  2. 参数列表不同(数量,数据类型,顺序),
	 * 		  3. 与返回值、访问修饰符无关
	 * 
	 */
	
	
	
	/*
	 *2. 简述构造函数:
	 *
	 *	构造函数的函数名与类名相同,
	 *	当创建对象时,默认调用无参构造方法。
	 *	如果已经给出有参构造方法,则必须创建无参构造方法
	 *
	 */
	
	
	/*
	 * 3. 封装的好处
	 * 
	 * 1. 封装能够使得外部不能调用封装内部的结构,
	 * 	     从而达到低耦合,达到难以影响程序总体的结构的效果
	 * 2. 具有良好的复用性。
	 * 3. 减少代码冗余。
	 * 
	 */
	
	/*
	 * 4. 继承的好处
	 * 
	 * 1. 子类能够调用父类的属性和方法,从而减少代码冗余
	 * 2. 代码得到复用
	 * 3. 父类引用指向子类对象时,对象只能够调用父类的属性和方法。
	 * 
	 */
	
	
	/*
	 * 5. 内部类有哪些,如何在其他类中创建成员内部类的对象
	 * 	1. 成员内部类
	 * 	2. 静态内部类
	 *  3. 匿名内部类
	 *  4. 局部内部类
	 * 
	 * public class 外部类{
	 * 
	 * 
	 * 	public class 内部类{
	 * 
	 * 
	 * 
	 * 		}
	 * }
	 * 
	 * 
	 * 
	 */
	
	
	/*
	 * 6. 简述静态代码块和构造代码块
	 * 
	 * 	  静态代码块:Static{
	 * 
	 * 					//程序代码块					
	 * 
	 *				 }
	 * 	静态代码块在程序进行类加载时,就已经完成初始化,执行时间与静态属性相同
	 * 	
	 * 构造代码块:{
	 * 				//程序代码块
	 * 			}
	 * 
	 * 构造代码块在程序创建对象时,完成初始化
	 */
	
	
	
	/*
	 * 7. &&和&的区别
	 * 
	 * &&:逻辑与,表示只有左右两边的表达式都true时,返回true,否则为false,并且,当&&左边的表达式为false时,右边的表达式不执行
	 * & :逻辑与,表示只有左右两边的表达式都为true时,返回true,否则为false,并且,当&左边的表达式为false时,右边的表达式继续执行
	 * 
	 * 
	 */
	
	
	/*
	 * 8. 自动类型转换的顺序
	 * 
	 * double float long int(从左到右,数据中有double...就自动
	 * 转换为double...,double优先转换,依次降低
	 *
	 * 
	 */
	
	/*
	 *9. 创建数组的三种方式 
	 *
	 *  1. 先声明,再创建空间,int[] a ; a = new int[5];
	 *  2. 声明并创建空间,int[] a = new int[5];
	 * 	3. 声明并赋值,int[] a = {1,2,3};int[] a = new int[]{1,3,5};
	 * 
	 */
	
	/*
	 * 10. 可变参数的格式和特点
	 * 
	 * 格式:数据类型 ...数组名
	 * 特点: 1. 可变长参数能够存储若干个数据
	 * 		 2. 如果存在不同类型的数据时,需要将可变长参数放到最后进行存储
	 * 		 3. 可变长参数唯一,不能同时存在两个
	 * 
	 */
	
	
	
	/*
	 * 11. 成员变量和局部变量的区别
	 * 
	 * 作用范围不同:成员变量是本类都可使用,局部变量的作用范围是在
	 * 创建的代码行开始,到包含它的最近结构结束
	 * 成员变量的变量名不能相同,局部变量的名字能够与成员变量的名字
	 * 相同,但是优先执行局部变量(就近原则)
	 * 
	 * 
	 */
	
	
	
	/*
	 * 12. this和super可以调用哪些内容
	 * 
	 * this.();调用当前类的构造方法
	 * this.变量名;调用当前类的变量
	 * this.(参数);调用当前类的有参构造方法
	 * 
	 * super.();调用父类的构造方法
	 * super.变量名;调用父类的属性
	 * super.(参数);调用父类的有参构造方法
	 * 
	 * 
	 * 
	 */
	
	
	/*
	 * 13. 简述静态的特点
	 * 
	 * 
	 * static:不能够改变的
	 * 静态属性一次赋值,不能二次赋值
	 * 静态方法不允许子类继承
	 * 
	 */
	
	
	
	/*
	 * 14. 简述final的作用
	 * 
	 * final:最后的,
	 * 父类中的属性有final修饰时,不允许子类调用
	 * 修饰方法时,不允许子类调用
	 * 修饰类时,此类不允许被继承
	 * 
	 */
	
	/*
	 * 15. 简述范围修饰符
	 * public:公开的,本类,其他类,本类包下,本类同包下都能够访问
	 * private:私有的,仅本类能够访问
	 * protected:本类以及本类同包下能够访问
	 * default:默认访问修饰符,本类和本类同包下,非同包子类能够访问
	 * 
	 * 
	 */
	
	
	/*
	 * 16. 抽象类和接口的区别
	 * 
	 * 属性的访问范围不同,接口中的属性都是静态常量,不允许调用
	 * 方法不同,接口中的方法都是抽象静态方法,不允许被调用。
	 * 
	 * 
	 * 
	 */
	
	
	/*
	 * 17. 简述多态的好处和向下转型
	 * 
	 * 多态: 1. 减少代码的耦合性,程序相互间的影响较小
	 * 		 2. 减少代码冗余
	 * 		 3. 更加符合现实世界,面向对象的思想
	 * 向下转型(拆箱):
	 * 		能够调用子类中特有的属性和方法,更加贴合现实
	 * 
	 * 
	 */
	
	/*
	 * 18. 线程的两种创建方式
	 *  1. thread{}
	 *  2. 实现Runnable()接口
	 * 
	 * 
	 */
	
	/*
	 * 19. IO流的四个顶层父类
	 * outputStream:字节输出流
	 * inputStream:字节输入流
	 * read:字符输入流
	 * write:字符输出流
	 * 
	 * 
	 */
	
	
	/*
	 * 20. 如何解决线程安全问题
	 * 
	 * 同步代码块syschronized
	 * 锁(lock,unlock)
	 * 
	 */
	
	/*
	 * 21. 简述文件名过滤器的用法
	 * 
	 * 使用FileNameFilter接口进行文件名的过滤
	 *  1.自定义类实现FileNameFilter接口
	 *  2.重写accept()方法,该方法有两个参数
	 * 
	 */
	
	/*
	 * 22. 简述序列化和反序列化
	 * 
	 * 序列化:将内存中的内容通过序列化写入指定文件中
	 * 反序列化:通过加absents,关键字,当进行序列化时,文件中不会写入该内容
	 * 
	 */
	
	/*
	 * 23. 简述异常处理的方式
	 * 1. 消极处理方式:throws
	 * 2. try{}catch(){}
	 * 	  try{}catch(){}catch{}
	 * 	  try{}catch(){}finally{}
	 * 	  try{}finally{}
	 * 
	 */
	
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值