自己整理的java面试题
(1)简述java开发包的种类
Javame javase javaee 。
Javame 一种已广泛的消费性产品为目的的高度优化的java运行环境
Javase 是针对桌面开发以及低端上午计算机解决方案而开放的版本
Javaee 是一种利用java平台来简化企业解决方案的开发,部署和管理相关的复杂问题的体系。
(2)java语言的特性有哪些
Java语言是一个面向对象的程序设计语言。主要特性如下
A java语言是简单的。
B java语言是面向对象的
C java 语言是分布式的
Djava语言是健壮的
E java语言是安全的
Fjava语言是跨平台的
Gjava语言是多线程的
(3)linux 环境下是如何安装javase环境
注意很windows环境大体相似 找到相应的linux 环境版本然后配置好环境变量
(4)列出你熟悉的java开发工具
A jdk (java Dvelopment kit):最基本的开发工具
B Borland jbuilder 付费 历史久远
C oracle jdeveloper 对于初学者来说 比较复杂
D IBM visual age of java 非常主流的开发工具
E eclipes 是一种可以扩展的开放源码的集成开发环境
(5)用自己的语言描述java中的类和对象
对象是类的实例
类
面向对象编程oop 的实质就是利用类和对象来建立抽象模型
类表示对象的类别 是创建对象的蓝本(也就说类事蓝本,不是对象自己认为)。建立一个事物的抽象模型本质上就是表达该事物的性质和行为。
类中定义的属性是一种可存储值得变量,该变量代表着事物具体的性质。
在项目开发中,雷一般可以通过uml建模来表示
对象
对象是类的实例,对象在构造是一类为蓝本,穿件对象的过程叫做实例化。对象是表示抽象事物的具体实例。
(6)命名java变量
1 包名的命名
Java包的名字都是有小写单词组成
类的命名
类的名字必须由大写字母开头,单词中的其他字母均为小写
方法的命名
方法的名字的第一个单词应为小写字母作为开头,后天单词则建议以用大写开头
常量的命名
使用大写
参数的命名
参数地命名规范和方法命名规范相同
Javadoc注解
以/**开头 以 * /结束
(7)理解成员
实例成员隶属于实例,但不隶属于整个类
1 类成成员
对象是以类为蓝本创建的类的实例。对象的方法定义了该对象的行为,一般被称为实例方法。
隶属于对象的实例变量和实例方法合称为对象的实例成员。值得注意的是,应与类静态成员相区别,静态成员只是隶属于类,而不隶属于对象
2 静态成员
静态成员隶属于类,而不属于任何该类生成的对象,当类加载时就会初始化静态变量;同样,静态方法也是隶属于类的么人不是对象,静态变量和静态方法合称为静态成员。
成员名称
成员含义
实例成员
指的是对象的实例变量和实例方法,只能通过对象应用加以访问或者调用
实例变量
实例变量只有在类的实例化时才分配字段,即当创建类的对象的时候,系统才分配这个字段,也叫做非静态变量
实例方法
一种隶属于类实力的方法,像同类的所有对象共享该方法的实现
静态成员
指的是隶属于类的静态方法和静态变量,静态成员可以通过类名或者对象的引用加以访问,调用
静态变量
一种载入类时就需要进行分配的变量,静态变量隶属于类,但是不属于该类的任何对象,所以成为静态变量或者类变量
静态方法
一种隶属类但是不属于该类任何对象的方法,叫做类方法,同样可以通过类名或者对象引用访问,调用
(8) 在java中,对象是如何传递消息
在Java对象之间的消息传递,是通过调用相互调用实例方法来实现的,而不是静态方法
(9) 对于类的静态变量的理解
运行下面程序,请选择输出结果
Public class x{
Private static int a;
Public static void main(String args[]){
Modify(a);
System.out.println(a);
}
Public static void modify(int a){
a++;
]
}
类的静态变量a在modify()方法中并没有被改变,而是改变了modify方法的参数。所以输出结果是0
public classx {
private staticinta;
public staticvoidmain(String[] args){
modify();
System.out.println(a);
}
private staticvoidmodify() {
// TODO Auto-generated method stub
a++;
}
}
如果改成这样输出就是为1
(10) 类的继承建模方法
Java中根据继承和聚合两种机制来保证根据现有的类构造新的类。聚合(聚合简单的理解 是一个类里包含其他的类 举例 图书馆 图书馆的类里有书,目录,借书记录等类)再现有的类构造出新的类,需要在子类的定义中使用extends子句,子类只能扩展一种父类,子类将继承超类的成员。注意修饰符(区分java关键字)
例如:
public class Test {
public static void main(String[]args) {
Shapeshape = new Circle();
System.out.println(shape.name);
shape.printType();
shape.printName();
}
}
class Shape {
public String name = "shape";
public Shape(){
System.out.println("shapeconstructor");
}
public void printType() {
System.out.println("thisis shape");
}
public static void printName() {
System.out.println("shape");
}
}
class Circle extends Shape {
public String name = "circle";
public Circle() {
System.out.println("circleconstructor");
}
public void printType() {
System.out.println("thisis circle");
}
public static void printName() {
System.out.println("circle");
}
}
答案输出:
shape constructor
circle constructor
shape
thisis circle
shape