不管如何,这条路,我依旧会努力走下去。

** 总结本来写成一篇太长,所以分几篇来写咯;**

有时间可以看看
第一篇总结

Java面向对象的基本特征之一:封装性

封装性:

1、封装性的目的保护某些属性和方法不被外部所看见
//这里说一下自己学linux时老师教我这个封装类似的思想。其实就是比如你是开发者,开发了一个软件,然后你打算给用户用。那么你一定会进行封装,就是给一部分功能给用户操作使用。那么用户是不能完全使用所有功能的。就相当于设置一个VIP用户这个功能,你只有成为会员,那么你就可以拥有这个功能,而不是VIP是根本看不到也用不了。也不知道对不对?

2、封装的实现为属性和方法进行封装是通过关键字private声明的。
实现该属性的set和get方法,为外部所访问。

例如:

package java面向对象;
/**
 * @author asus
 *
 */
//private 实现分装,外部不可直接调用。
//get set 是外界访问的接口。只有通过接口才能调用。
class Person{//类
    private int age;//私有属性
    private String name; //私有属性
    public int getAge() {//公共方法
        return age;
    }
    public void setAge(int age) {
        if (age>=0 && age<150) { //判断年龄是否合法。若非法显示为0
            this.age = age;
        }
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public void tell(){ //get是得到
        System.out.println("姓名:"+getName()+" 年齡:"+getAge());
    }
}
public class 封装性 {
    public static void main(String[] args) {
    	/**
	 * @param args
	 */
        Person per = new Person();//定义新类;
        per.setName("张三");//set是设置
        per.setAge(30);
        per.tell();
    }
}

匿名对象:
匿名对象没有名字的实体,也就是该实体没有对应的变量名引用
如果使用:
1,当对象对方法进行一次调用的时候,可以使用匿名对象对代码进行简化。

为什么只对方法,而不调用属性呢?因为匿名对象调用属性没意义。

如果对象要多成员进行多次调用,必须给对象起个名字。不能再使用匿名对象。
2,匿名对象可以实际参数进行传递。

例:

package java面向对象;
/**
 * @author asus
 *
 */
class Student{
    public void tell() {
        System.out.println("hello");
    }
}
public class 匿名对象 {
    public static void main(String[] args) {
    	/**
	 * @param args
	 */
        //正常对象
        Student stu = new Student();
        stu.tell();
        //匿名对象
        new Student().tell();//调用一次的情况可用匿名对象
    }
}

构造方法:

1、格式:
访问修饰符 类名称(){
//程序语句;
}
2、注意点:

构造方法名称必须与类名一致。

构造方法没有返回值。

3、构造方法主要是为类中的属性初始化。

4、每个类在实例化之后都会调用构造方法,如果没有构造方法,程序在编译的时候回创建一个无参的什么都不做的构造方法。

5、构造方法也可以重载。

例如:

package java面向对象;
/**
 * @author asus
 *
 */
class People{
    //构造方法
    public People(int a) {
        System.out.println(a);  
    }
}
public class 构造方法 {
    public static void main(String[] args) {
    	/**
	 * @param args
	 */
        People per = new People(5);
    }
}