面向对象(一)


面向对象
(1)面向对象的概念及其理解
面向对象:是基于面向过程的一种思想
面向过程:以函数为基础,关注实现过程。
面向对象:一对象为基础,关注实现结果。
思想特点:
A:符合人们的思考习惯。
B:把复杂的事情简单化。
C:把程序员从执行者变成了指挥者。
(2)如何用面向对象思想来描述事物
分析事物:
属性:外在特征。
行为:能够做什么。
(3)在java语言中,如何表示事物。
java语言中,最基本的单位是类,类就是用来体现事物的。
类:是属性和行为的集合。是一个抽象的概念
对象:是类的具体存在、具体体现。
成员变量 属性
成员方法 行为
例如
学生这个事物 ——类
张三、李四   ——对象
(4)举例:
把大象装进冰箱
面向过程:
A:打开冰箱
B:装进大象
C:关闭冰箱
代码如下:

class 测试类
{
	public static void main(String[] args)
	{
		open();
		in();
		close();
	}
	public void open()
	{
		System.out.println("打开冰箱");
	}
	public void in()
	{
		System.out.println("装进大象");
	}
	public void close()
	{
		System.out.println("关闭冰箱");
	}
}
面向对象:
怎样让我们的操作更符合面向对象思想?
A:分析该系统中有哪些对象?
B:明确每个对象可以做什么?
C:明确各个对象间的关系?

分析步骤:
A:有哪些对象?
大象
冰箱
测试
B:每个对象都有什么功能?
大象:
in()
冰箱:
open()
close()
测试:
main()
C:测试
测试中调用大象和冰箱的功能
代码体现:

class 大象
		{
			pubic void in()
			{
				System.out.println("装进大象")
			}
		}
		class 冰箱
		{
			public void open()
			{
				System.out.println("打开冰箱")
			}
			public void close()
			{
				System.out.println("关闭冰箱")

			}
		}
		class 测试类
		{
			public static void main(String[] args)
			{ 
				冰箱对象.open();
				大象对象.in();
				冰箱对象.close();
			}
		}
	
		
(5)案例
A:学生类

class Student
	{
		String name;
		int age;
		char sex;
		//学习的方法
		public void Study()
		{
			System.out.println("Students like studying ");
		}
		//吃饭的方法
		public void eat()
		{
			System.out.println("学生吃饭");
		}
		//睡觉的方法
		public void sleep()
		{
			System.out.println("学生睡觉");
		}
	
		
	//学生测试类
	class StudentTest
	{
		public static void main(String[] args)
		{
			//创建对象的格式
			//类名 变量名 = new 类名();
			Student s = new Student();
			//获取成员变量的值
			//成员变量和成员方法的使用
			//对象名.成员变量
			//对象名.成员方法
			System.out.println(s.name+"***"+s.age+"***"+s.sex);//null,0
			//给成员变量赋值
			s.name ="刘亦菲";
			s.age = 26;
			s.sex = '女';
			System.out.println(s.name+"***"+s.age+"***"+s.sex);
			//使用成员方法
			s.study();
			s.eat();
			s.sleep();
			
		}
	}
B:汽车类
汽车:
成员变量:品牌,价格,颜色
成员方法:跑,停,
class Car
	{
		String brand = "宝马";
		int price;
		String color;
		//跑的方法
		public void run()
		{
			System.out.println("牌子为"+brand+"颜色为"+color+"的汽车启动了")
		}
		//停的功能
		public void stop()
		{
			System.out.println("牌子为"+brand+"颜色为"+color+"的汽车停止了)
		}
	}
	//测试类
	class CarTest
	{
		public static void main(String[] args)
		{
			Car c = new Car();
			//给成员变量赋值
			c.brand = "奥迪";
			c.price = 2000000;
			c.color = "蓝色";
			System.out.println(c.brand+"***"+c.price+"***"+c.color);
			c.run();
			c.stop();
			//手动让对象变为垃圾
			c =null;
			c.run();
			c.stop();

		}
	}
(6)成员变量和局部变量的区别
A:定义位置的区别:
成员变量:定义在类中,方法外。
局部变量:定义在方法中,或方法声明上。
B:初始化值的区别:
成员变量:有默认初始化值。
局部变量:没有默认初始化值,要想使用,必须先赋值,
C:存储位置的区别:
成员变量:存储在堆中。
局部变量:存储在桟中。
D:生命周期的区别
成员变量:随着对象的创建而存在,随着对象的消失而消失。

局部变量:随着方法的调用而存在,随着方法的调用完毕而消失。

(7)匿名对象

A:概念:对象的简写形式。

B:匿名对象的使用场景

<1>当对对象方法仅进行一次调用的时

<2>匿名对象可以作为实际参数进行传递


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值