1.java的三大特性
(1)封装
1.封装是面向对象的核心特性,是信息隐藏思想的具体实现技术。封装是指:/1.将数据核对数据的操作包装成一个对象,使对象成为一组属性和操作的运行单位
2. 实现信息隐藏,尽可能隐藏类中某些数据和细节
Java提供构造方法,析构方法,方法重载,设置访问权限等措施实现封装特性/
(2)继承
实现抽象和共享,构造可复用软件发有效机制。使用关键字extens声明一个类继承指定的父类。
继承原则:/*
- 子类继承父类所有成员变量
- 子类继承父类除构造方法外所有成员方法
- 子类不继承父类构造方法,子类必需声明自己的构造方法
*/
(3)多态
主要有方法的多态和类型的多态。
/1.方法多态包括方法的重载(一个类里面有多个形同名称方法但他们的类型,参数列表等不同)和覆盖(子类中拥有和父类中类型,参数,名称,完全相同的方法但方法实现不一样;当子类的对象调用方法时将自动调用子类的方法)
2.类型的多态:子类是一种父类类型/
循环
请你说明一下,在Java中如何跳出当前的多重嵌套循环?
在最外层循环前加一个标记如A,然后用break A;可以跳出多重循环。(Java中支持带标签的break和continue语句,作用有点类似于C和C++中的goto语句,但是就像要避免使用goto一样,应该避免使用带标签的break和continue,因为它不会让你的程序变得更优雅,很多时候甚至有相反的作用,所以这种语法其实不知道更好),根本不能进行字符串的equals比较,否则会产生NullPointerException异常。
数据类型
int和Integer有什么区别?
/*1.Java是一个近乎纯洁的面向对象编程语言,但是为了编程的方便还是引入了基本数据类型,但是为了能够将这些基本数据类型当成对象操作,Java为每一个基本数据类型都引入了对应的包装类型(wrapper class),int的包装类就是Integer,从Java 5开始引入了自动装箱/拆箱机制,使得二者可以相互转换。
Java 为每个原始类型提供了包装类型:
- 原始类型: boolean,char,byte,short,int,long,float,double
- 包装类型:Boolean,Character,Byte,Short,Integer,Long,Float,Double
2.我们在web应用开发过程中经常遇到输出某种编码的字符,如iso8859-1等,请你讲讲如何输出一个某种编码的字符串?
调用getBytes函数
Public String translate (String str) {
String tempStr = “”;
try {
tempStr = new String(str.getBytes(“ISO-8859-1″), “GBK”);
tempStr = tempStr.trim();
}
catch (Exception e) {
System.err.println(e.getMessage());
}
return tempStr;
}
- 请你说明String 和StringBuffer的区别
JAVA 平台提供了两个类:String和StringBuffer,它们可以储存和操作字符串,即包含多个字符的字符数据。这个String类提供了数值不可改变的字符串。而这个StringBuffer类提供的字符串进行修改。当你知道字符数据要改变的时候你就可以使用StringBuffer。典型地,你可以使用StringBuffers来动态构造字符数据。
String是final类型
*/