JAVA学习笔记(二)

JAVA学习笔记(二)
2008/07/18 14:00

构造函数的定义和作用

构造函数用于对对象的初始化,构造函数与类同名,无返回值,但是不能有void。如果你不自己写一个构造函数,编译器会为你建一个缺省构造函数。如果构造函数有参数,则必须在建对象时提供参数。
ClassA myA = new ClassA();
ClassA()就是个构造函数,构造函数可以重载,没有特殊需要时不能把构造函数定义为private,除非用单例模式;
既然提了单例模式,就简单说一下,来个小例子说明一下:
class Singleton {
    
private Singleton() {
    }
    
    
private static Singleton myS = null;

    
public static Singleton getInstance() {
        
if(mys == null) {
            myS 
= new Singleton();
        }
    }
}

注意:
    1、自己写了构造函数,系统就不会再自动生成默认的构造函数;
    2、一般不要定义成private


访问控制

    修饰符                同一个类     同一个包     子类      整体(指java虚拟机)
    private                   ◎
    defaut       ◎    ◎
    protected        ◎           ◎             ◎
    public                     ◎           ◎             ◎         ◎
    
    成员变量和成员方法可以加这些修饰符
    类只能有两种修饰符 public defaut(就是默认的)

面向对象的三个基本特征
面向对象的三个基本特征是:封装、继承、多态。
o_OOBase.gif

实现类的封装性

    成员变量一般用private修饰
    来个例子吧
    
public class Encapsulation() {
    
private int age = 20;
    
public int getAge() {
        
return age;
    }

    
public void setAge(Encapsulation myE) {
        
this.age = myE.age;
    }
}

模块设计追求强内聚(功能尽量在类内独立完成) 弱耦合(尽量少的对外公开方法)

类的封装优点:
1、增强安全性和简化编程;
2、使用者不必了解具体的实现细节,而只是要通过外部接口,一特定的访问权限来使用类的成员。

封装的大致原则:
1把尽可能多的东西藏起来.对外提供简捷的接口.
2把所有的属性藏起来.




posted @ 2008-07-18 23:21  李彪  阅读(198)  评论(0编辑  收藏  举报