关于java的面向对象的相关知识-1

面向过程和面向对象的 区别和练习

—》面向过程:就是指行为的每个步骤,以步骤为单位完成某个具体的事情
—》面向对象:面向对象就是将面向过程通过调度组合不同的对象来完成某些事情,面向对象比面向过程更先进,更高级。

建立面向对象的思维方式

1.先整体,在局部
2.先抽像,再具体
先思考完成问题的框架,而不是行为
3.能做什么,在做什么

相关概念

类:是一个抽象的概念,雷士一组具有相同特性(属性)和行为(方法)的集合。
对象:对象就是类中一个具体的个体。
属性:相当于一个具体对象的特性
方法:相当于人的一个具体对象行为,比如:吃饭等

类和对象的定义格式

class 类名{
属性名称:
返回值类型 方法名称
}
对象的定义:
一个类想要真正的进行操作,必须依赖于类
语法:
类名称 对象名称=new 类名称();
访问类中的属性:
对象.属性;
调用类中的方法:
对象.方法()

实例

定义一个猫类,写上属性和方法

public class Cat {
	//属性--成员变量
	//昵称
	public String cname;
	//重量
	public double weight;
	//腿
	public int tui;
	//颜色
	public String color;
	
	/*
	 * 访问修饰符 (权限)class 类名()
	 * public公开的,无论在哪里都能访问到
	 * class是java中自定义数据类型的关键字
	 * 通过class定义的都是引用数据类型
	 * 类名:
	 * 
	 */
	//方法
	/*
	 * 显示的方法:
	 * 注意:方法的注释都使用这个注释,这个注释有提示的效果
	 * String.format("最终显示的结果", 参数);
	 * 
	 */
	public void show() {
		//%-5.2负号表示左对齐
		System.out.println(String.format("昵称:%s,重量:%-5.2f,腿的个数:%d,猫的颜色:%s", cname,weight,tui,color));
	}
}

执行调用时:

public static void main(String[] args) {
		// TODO Auto-generated method stub
		//创建对象
		//类名 对象名 =new 类名();
		//对象名是自己定义的,符合要求即可
		/*
		 * 变量:开辟一个空间存储值 一个空间一个值
		 * 数组:开了一连串的空间的多个值  一个空间多个值,数据类型也必须相同
		 * 将多个相同类型的变量包装成一个数组名
		 * 
		 */
		Cat c=new Cat();//申明了一个变量并在内存中开辟了一个空间
		
		//调用属性赋值
		c.cname="小白";
		c.color="白色";
		c.tui=4;
		c.weight=12;
		//调用属性取值
		c.cname();
		//调用方法
		c.show();
	}

类和对象的内存分析

xiangxi
new 关键字表示创建一个对象
new关键字表示实例化一个对象
new关键字表示申请内存空间
栈内存是存储地址和基本数据类型,堆是存储对象的,
第一种情况中仅仅声明了一个变量名,便没有开辟新的内存空间。
有了new就可以申请一个内存空间,得到变量的地址,指向堆内存的一个空间。堆空间内就是所有属性,方法等相加的内存空间。
在这里插入图片描述
当其有值的时候,name就会的到一个地址,这个地址是“小白”的地址
栈内存存的实际上是一个地址,堆内存存在的才是真正的数据。

构造方法

-》构造方法:
1.构造方法就是类构造对象是调用的方法,用于对象的初始化工作。
2.构造方法是实例化一个类的对象是,也就是new的时候,最先调用的方法。
-》构造方法的的定义格式:
构造方法在类中定义,方法名与类名相同,无返回值类型的声明。
例如:

public class Student {
	//id号码
		public int id;
		public int hight;
		public Student() {}
		//带参构造方法,用于实例化对象的时候,直接初始化
		public Student(int id,String name,String sex,int age,int hight) {
			//此写法可以在后续直接赋值调用
			this.id=id;
			this.name=name;
			this.sex=sex;
			this.age=age;
			this.hight=hight;
		}

}

说明:一个类中有多个构造方法,就叫做构造方法 的重载有其他构造方法时,保留默认的构造方法
默认的构造方法就是只有一个相同的类名,没有参数和其它东西。
构造方法的知识点小结:
在这里插入图片描述

this关键字

this关键字的用法:
1.可以调用属性
2.可以调用方法和构造方法
3.表示当前对象
在这里插入图片描述
在方法中调用方法:
在这里插入图片描述

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值