类和对象

类和对象

类:类是对现实生活中一类具有共同属性和行为的事物的抽象

​ 特点:

类是对象的数据类型

​ 类是相同属性和行为的一组对象的集合

属性:对象具有的各种特征,每个对象的属性都具有特定的值

对象的行为:

​ 对象能够执行的操作

类和对象的关系:

​ 类是现实生活中一类具有共同属性和行为的事物的抽象

​ 对象是能够看得到摸得着真实存在的实体

类的定义:

  • :是java程序的基本组成单位;
  • :由属性和行为组成

属性在类中由成员变量来体现(类中方法外的变量)

行为在类中通过成员方法来体现(相比之前方法去掉static关键字即可)

public class 类名{
    //成员变量(具有默认值)
    数据类型 变量;
    ...
    //成员方法
    方法;
    ...
}

对象

创建对象

//类名 对象名 = new 类名();
Student a = new Student();

使用对象

//对象名.变量名
a.name

使用成员方法

//对象名.方法名();
a.call();

成员变量和局部变量

成员变量:

  • 类中的变量
  • 堆内存
  • 随着对象的存在而存在,随着对象的消失而消失
  • 有默认值

局部变量:

方法中的变量,或方法声明上

在栈内存

没有默认初始值,必须先定义,赋值,才能使用

封装

private

  • 是一个权限值

  • 可以修饰成员(成员变量和成员方法)

  • 作用是保护成员不被别的类使用,被private修饰的成员只在本类中才能访问

  • 一个标准类的编写:

    把成员变量用private修饰

    提供相应的get/set方法

针对private修饰的成员变量如果被其他类使用,提供相应的操作:

get变量名();
//用于获取成员变量变量值,方法用public修饰
set变量名(参数)
//用于设置成员变量的值,方法用public修饰
private int age;
//设置获取成员变量的值的方法getAge()
public int getAge(){
    return age;
}
//设设置成员变量的值的方法setAge()
public void setAge(int a){
    age = a;
  //设置更改成员变量限制
    if(a<0||a>100){
        System.out.println("你输入的年龄有误")}
}
----------------------------------------------------------------------
    //在类中调用方法
    //创建对象
   Student s = new Student();
   s.setAge(20);
   s.getAge();

this

修饰的变量用于指代成员变量

  • 方法的形参如果与成员变量同名,不带this修饰的变量指的是形参,不是成员变量
  • 方法的形参没有成员变量同名,不带this修饰的是成员变量

解决局部变量隐藏成员变量

代表所在类的对象引用方法被哪个对象调用,this就代表哪个对象

封装

是面向对象三大特征之一(封装,继承,多态)

是面向对象编程语言对客观世界的模拟,客观世界里成员变量都是隐藏在对象内部的,外界是无法直接操作的

将类的某些属性信息隐藏,不被外部程序直接访问,而是通过该类提供的方法(get/set)访问成员变量private

通过方法控制成员变量的操作提高了代码的安全性

把代码用方法封装,提高了代码的复用性

构造方法

:用于创建对象;完成对象的初始化

public class 类名{

修饰符 类名(参数){
  }
}

标准类制作

成员变量:

  • ​ 使用private修饰

构造方法

  • 提供一份无参构造方法
  • ​ 提供一个带多个参数的构造方法

成员方法

  • 提供每个成员变量对应的set()/get()方法
  • ​ 提供一个显示对象的show()

创建对象并为其成员变量赋值的两种方式

  • ​ 无参构造方法创建对象后使用set()赋值
  • ​ 使用带参构造方法直接创建带有属性值的对象
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值