A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© gaoyilin 中级黑马   /  2015-6-30 09:55  /  414 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

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;

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马