5)面向对象

面向对象特征

封装 继承 多态
成员变量 属性 类中方法外
成员方法 行为 去掉static
类:相关属性和行为的集合
对象:一类事物的具体体现
//创建对象格式
 类名 对象名=new 类名();
 //使用
 对象名.变量名
 对象名.方法名
 car a1=new car();
 a1=null;
 //没有变量指向该对象 该对象会变成垃圾
成员变量:类中方法外          在对象内 堆 有默认初始化值         生命随对象
方法变量:方法定义或方法声明   在方法内 栈  
无初始化 必须定义赋值   生命随着方法


引用数据类型变量 数组 类 接口 枚举

匿名对象 new Car.run(); 只适合一次调用 创建多次就生成多个对象
new  Car.color="red";
new Car.num=8;
运行是null和0
匿名对象可以调用属性 会变成垃圾 无意义
需要赋值不能用

匿名对象可以作为参数传递

method(new car();
//new car()产生一个地址

封装:隐藏对象属性和实现细节 对外提供公共方式
好处:隐藏细节 提高复用性 提高安全性
原则:不需要对外提供内容隐藏起来隐藏属性 公共对外公共方法访问

private 可以修饰成员变量成员方法
在类里面 setAge() getAge() 改变     


this关键字 代表当前对象引用 用来区分成员变量局部变量   
package haha;

import java.util.Date;
import java.util.GregorianCalendar;

public class EmployeeTest {
   

	public static void main(String[] args) {
   
		Employee[] staff=new Employee[3];
		staff[0]=new Employee("Carl Cracker", 75000, 1987,12,15);
		staff[1]=new Employee("Harry Hacker", 50000, 1989,10,1);
		staff[2]=new Employee("Tony Tester", 40000, 1990,3,15);
		
		for (Employee e : staff) {
   
			e.raiseSalary(5);
		}
		for (Employee e : staff) {
   
			System.out.println("name="+e.getName()+",salary="+e.getSalary()+",hireday="+e.getHireDay());
			
		}
			
		
	}

}
class Employee
{
   
	private String name;
	private double salary;
	private Date  hireDay;
	
	public Employee() {
   
	}

	public Employee(String name, double salary, int year,int month,int day) {
   
		this.name = name
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值