1.java中有多少种基本类型?请列出。
答:基本数据类型8种,String并不是基本数据类型,它可以当成char[]。
内置类 对应的基本数据类型
Byte byte
Short short
Int int
Long long
Float float
Double double
Boolean boolean
Character char
2.限制修饰符public,private,protected,friendly的用法。
答:”封装等级”关键字有public,protected,private3个,但其实成员的封装等级有4种。如下:
可见度
封装字 class package subclass world
private √ × × ×
none √ √ × ×
protected √ √ √ ×
public √ √ √ √
3.final和static的用法
答:final常量限定符只能初始化一次。
final int a = 3 ;
static 静态变量或者静态方法
public static void method(){}
static final int a = 3;
静态方法不用实例化,直接可以用class.method进行调用。
静态方法只能调用静态变量或者其它静态方法,不能调用非静态变量或者其它非静态方法。
例如:
static final int a = 3;
int b =9
public static void method(){
int c =a;
c = b ; //错误的调用方法。
}
4.覆盖(override)和重载(overloaded)的区别
答:还是举例说明吧,呵呵,,,
package com.cucu;
/**
* @author CuCuChen
* @version $Id$
* @since 2003-1-2
*/
public class A {
public void f(){
System.out.println("A");
}
public void classA(){
System.out.println("AA");
}
}
package com.cucu;
/**
* @author CuCuChen
* @version $Id$
* @since 2003-1-2
*/
public class B extends A {
public void f() {
System.out.println("B");
}
public void f(int a) {
System.out.println("This is f(int a)");
} // overloaded
public void f(String s) {
System.out.println("classA ");
}
public static void main (String [] args) {
B b = new B();
b.f(); //override
a.f(“test”); //多态
}
}
5.普通类,抽象类和接口的区别
答:在这里我也用一个实例加以说明:
package com.cucu;
/**
* @author CuCuChen
* @version $Id$
* @since 2003-1-2
*/
public abstract class A {
public abstract void classA();
}
package com.cucu;
/**
* @author CuCuChen
* @version $Id$
* @since 2004-5-10
*/
public interface C {
int a = 3;
String classC ();
}
package com.cucu;
/**
* @author CuCuChen
* @version $Id$
* @since 2003-1-2
*/
public class B extends A implements C {
public void classA() {
System.out.println("This method is from abstract class A");
}
public String classC() {
return "This method is from interface class C";
}
}
在此我不想把普通类再做过多说明。
抽象类要注意的:有一个或者一个以上的方法申明为abstract那么这个类即为抽象类(abstract class);抽象类并不能进行实例化操作;只能通过继承加以实现他的方法。继承它的子类必须实现抽象类所有abstract方法。而且Java只能进行单一继承。
接口要注意的:接口里所有的变量不管加不加限制修饰符都默认为:
public static final
接口里的所有方法不管加不加限制修饰符都默认为:
public
接口可以也不能进行实例化操作,接口没有构造函数。可以用 implements 引用N个接口而实现多个继承,必须实现接口中定义的所有方法。
接口还有一种调用方法:
如下:
package com.cucu; |
|