Java基础(chapter86-chapter102)总结

什么是面向对象

面向对象思想就是不断的创建对象,使用对象,指挥对象做事情。(如果有对象,直接用对象,对我们直接提供服务)
例如:吃煎饼果子利用面向对象的思想

  1. 找会摊煎饼的大妈(创建一个摊煎饼大妈的对象)
  2. 调用其摊煎饼的技能(功能),传递进去钱参数
  3. 返回给我们一个煎饼

什么是类和对象

如上述的煎饼例子,就可以抽象出几个类,首先抽象出人类,人类中有女性类,女性类中有大妈类,大妈中有煎饼大妈类,而做煎饼就是煎饼大妈的技能,也就是方法,煎饼大妈的性别、年龄就是她的属性,为了增加销路,她还可以在摊位上写上她的电话,这个电话号码也可以是她的属性。假设这个煎饼大妈叫王大妈,那么王大妈就是煎饼大妈类中的一个对象。

如何写一个类

要写一个类,首先需要知道一个类至少需要有那些东西:
1、成员变量 就是事物的属性;
2、成员方法 就是事物的行为。
示例代码:

public class Student //学生类
{
    public String name; //成员变量,即属性
    public int age; //成员变量,即属性

    public void study() //成员方法
    {
        System.out.println("study...");
    }

    public void eat() //成员方法
    {
        System.out.println("eat...");
    }
}

成员变量和局部变量的区别

1、在类中的位置不同:成员变量在类中,方法外;局部变量:在方法中或者方法声明上(形式参数)。
2、在内存中的位置不同:成员变量在堆内存;局部变量在栈内存。
3、生命周期不同:成员变量随着对象的创建而存在,随着对象的消失而消失;局部变量随着方法的调用而存在,随着方法的调用完毕而消失。
4、初始化值不同:成员变量有默认值;局部变量没有默认值,必须先定义,赋值,最后使用。

类的构造方法

构造方法是一旦创建类实例便立刻自动调用的方法,由于这个特质,构造方法最基本的用途便是给对象的数据进行初始化。构造方法也可重载,但是一般至少需要一个空参数的构造方法。
示例:

public class Student
{
    public String name;
    public int age;

    public Student() //空参数构造方法
    {

    }
    public Student(String name) 
    {
        this.name=name; //使用this关键字可以将类属性与方法参数区分
    }
    public Student(int age)
    {
        this.age=age;
    }
    public Student(String name,int age)
    {
        this.name=name;
        this.age=age;
    }
}

private关键字

开发人员往往不希望类的属性被轻易修改,或者不希望一些用于中间过程的方法被使用者调用。那么可以用private替代public,把不希望别人修改或使用的东西“隐藏”起来。

示例:

public class Student
{
    private String name; //使用private修饰name属性
    private int age; //使用private修饰age属性

    public Student()
    {

    }
    public Student(String name) //可以通过构造方法设置对象的name属性
    {
        this.name=name;
    }
    public Student(int age) //可以通过构造方法设置对象的age属性
    {
        this.age=age;
    }
    public Student(String name,int age) //可以通过构造方法设置对象的name、age属性
    {
        this.name=name;
        this.age=age;
    }

    public String getName() //可通过getter方法获得对象name属性的值
    {
        return name;
    }

    public void setName(String name) //可通过setter方法修改对象name属性的值
    {
        this.name = name;
    }

    public int getAge()
    {
        return age;
    }

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

    public void study()
    {
        System.out.println("study...");
    }

    public void eat()
    {
        System.out.println("eat...");
    }
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值