Test10面向对象

本文介绍了面向对象编程的基本概念,包括面向过程与面向对象的区别,构造方法的使用、类和对象的关系,实例化过程,javaBean规范,以及静态属性和传址、传值的区别。
摘要由CSDN通过智能技术生成

 1.面向对象

1.1面向对象和面向过程

面向过程:侧重分步骤,就是完成某件事的详细步骤,然后一步步完成,类似于公司扁平化管理

面向对象:侧重分模块,类似于公司的层级管理

1.2构造方法

构造方法:权限控制修饰符,  类名/方法名(参数列表){方法体}

构造方法的方法名,和类名必须一致

如果类中没有创造构造方法,则默认有一个公共的无参构造

如果写了构造方法,不管写的是有参还是无参,那么默认的公共的无参构造都不再提供

所以,我们一般在写构造方法的时候,也会手动再写一个无参构造(不一定,根据需求来定)

构造方法也是可以发生重载的

构造方法用于创造对象并初始化对象中的属性

1.3类和对象

对象:一切皆对象,对象就是具体的事物

类:封装了属性

对象:封装了属性值

一般会根据不同的属性划分不同的类 根据不同的属性值划分不同的对象

1.4实例化

实例化:类名 变量名 = new 类名(参数);

1.载入类到静态区

2.调用构造方法,栈内存开辟栈帧,在堆内存开辟内存空间

3.执行构造方法,对堆内存数据进行初始化

4.构造方法弹栈,把堆内存对象的内存地址返回给变量

1.5对象使用
Student s = new Student();
s.age = 20;
s.name = "张三";
System.out.println("年龄"+s.age);
1.6javaBean

javaBean规范

1.有公共的无参构造,是狗有有参构造看需求

2.所有的属性,全部private 私有化

3.提供操作属性的方法

1.7对象调用静态属性

因为静态属性跟对象没有关系,属于类级别的

所以当我们使用对象调用静态属性的时候会自动转换为通过类名调用

1.8传址和传值
public static void main(String[] args) {
Animal a = new Animal(10);
m1(a);
System.out.println("main"+a.age);

}
public static void m1(Animal a){
a.age=22;
System.ou.println("m1"+a.age);
}
class Animal{
int age;
Animal (int age){
age =age_;
}
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值