7、面向对象之封装

1、如果一个类包含了属性与方法,那么该类的每一个对象都具有自己的属性,但无论一个类有多少个对象,这些对象共享同一个方法。

2、关于方法参数传递的总结:对于Java中的方法参数传递,无论传递的是原生数据类型还是引用类型,统一是传值(pass by value)。

3、什么类型的引用就能指向什么类型的对象,比如People类型的引用就能指向People类型的对象,但不能指向Student类型的对象。比如

People people = new People(); // 正确

People people = new Student(); //错误

4、构造方法(Constructor):构造方法用于完成对象属性的初始化工作,构造方法的特点:

    a)构造方法的名字必须与类名完全一致(包括大小写)

    b)构造方法没有返回值,连void也不能出现。

    c)如果在定义一个类的时候,没有为类声明构造方法,那么java编译器会自动为类添加一个没有参数且方法体为空的构造方法(默认的构造方法)

    d)如果在定义一个类的时候,为类声明了构造方法,那么Java编译器就不会再为类添加构造方法了。

    e)不能显式调用类的构造方法,构造方法通常是通过new关键字隐式调用。

public class People

{

        public People()

        {

        }

}

5、new关键字在生成对象时完成了三件事情:比如:People people = new People();

a) 为对象开辟内存空间。

b) 调用类的构造方法。

c) 将生成的对象的地址返回。

6、默认的构造方法:构造方法没有参数且方法体为空。

7、使用new来生成对象的时候,后面的小括号()表示构造方法的参数列表,如果构造方法不接收参数,那么小括号中的内容为空;如果构造方法接收参数,那么小括号中的实际参数就需要与构造方法定义中的形式参数保持一致(参数数量一致、参数类型一致、按照顺序逐一赋值)。

public class PersonTest
{
        public static void main(String[] args)
        {
        Person person = new Person();     //错误,构造函数带参数

        System.out.println(person.age);
        }

}

class Person
{
    int age;

    public Person(int i)

    {
        age = i;
    }
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

kaoa000

你的鼓励将是我创作的最大动力!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值