10 面向对象

10 面向对象

10.1 生活中的面向对象
生活中的面向对象和面向过程
	面向对象:
		找合适的人,做合适的事
	面向过程:
		亲力亲为,自力更生,所有的过程都是经历
10.2 java中定义类的格式
10.2.1 格式
格式:
   class 类名 {
   	属性描述;
   	行为描述;
   }
类名:
   要求符合大驼峰命名法,见名知意
   类名这里可以认为是一个数据类型名,自定义数据类型
   
属性描述:
   描述当前类有哪些属性
   例如:
   	人类的身高体重,年龄姓名
   	
行为描述:
   描述当前类有哪些行为
   例如:
   	人类的吃饭行为,睡觉行为,打游戏行为
10.2.2 自定义完成Person类
/**
 * 自定义Person类,人类
 * @author Anonymous
 *
 */
class Person {
	/* 属性描述 【成员变量 Field】*/
	// 姓名属性描述 这里暂时不需要初始化 只是描述当前类有哪些属性
	// String是字符串类型,name成员变量
	String name;
	
	// 年龄描述
	// int是数据类型 age成员变量
	int age;
	
	// 性别描述
	// char是数据类型 gender成员变量
	char gender;
	
	/* 
	 * 行为描述  【成员方法 Method】
	 * 一下方法目前不需要static 不要问
	 */
	// 吃饭行为描述
	public void eat(String food) {
		System.out.println("吃" + food);
	}
	
	// 睡醒行为描述
	public void sleep() {
		System.out.println("月亮不睡你不睡,你是秃头小宝贝");
	}
	
	public void game() {
		System.out.println("WOT World Of Tank 坦克世界");
	}
}
10.2.3 Java 中创建对象的格式
格式:
	Scanner扫描器
	Scanner sc = new Scanner(System.in);

赋值号左侧:
	Scanner:
		数据类型名,Scanner类,【类名】。
	sc:
		sc 可以认为是Scanner类的对象,sc对象名,同时也是一个【引用数据类型变
		量】

赋值号右侧:
	new:
		1. 在内存的【堆区】申请当前对象所需的内存空间
		2. 擦除整个内存空间中的所有数据,所有的内存空间中二进制位都是0
	Scanner(System.in);
		和类名同名的方法
		目前 类名();即可

格式:
	类名 对象名 = new 类名();

创建Person类对象

/*                                                
 * 这里创建一个Person对象                                 
 * 格式:                                            
 * 		类名 对象名 = new 类名();                        
 *                                                
 * 这里创建了一个Person类的对象,对象名 per                   
 */                                               
Person per= new Person();                     
System.out.println(per);                       
/*                                                
 * com.qfedu.b.Object.Person@15db9742             
 * com.qfedu.b.Object 完整的包名                       
 * Person 类名                                      
 * @ 所在内存位置                                       
 * 15db9742 是当前Person类的对象,per所在【堆区】内存空间首地址     
 */                                               

使用成员变量

操作类内的成员变量格式:
	类对象.成员变量名 可以赋值操作,可以取值操作

使用成员变量方式

/*                                                        
 * 通过Person类的对象, per操作name成员变量,age成员变量,gender成员变量      
 * 进行赋值操作                                                 
 *                                                        
 * . 的                                                    
 */                                                       
per.name = "海航中路彭于晏";                                  
per.age = 16;                                          
per.gender = '男';                                      
                                                          
/*                                                        
 * 通过Person类的对象 saolei取值成员变量内容                            
 */                                                       
System.out.println("Name:" + per.name);                
System.out.println("Age:" + per.age);                  
System.out.println("Gender:" + per.gender);    

使用成员方式

Scanner sc = new Scanner(System.in);

sc.nextInt(); 通过Scanner类的对象 sc调用nextInt();
sc.nextFloat();
sc.nextDouble();
sc.nextLine();

. 的

格式:
	类对象.成员方法(所需参数);
/*                        
 * 格式:                    
 * 		类对象.成员方法(所需参数);   
 * . 的                    
 */ 

per.eat("鱼丸");
per.sleep();
per.game();
10.3 总结
格式:
	a. 自定义类的格式
	b. 创建类对象格式
	c. 通过类对象调用成员变量的格式
	d. 通过类对象调用成员方法的格式
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值