1. 面向对象的概念
万物皆可对象对象的实质是属性和行为。对象和尸体是一一对应的,也就是说现实世界的每一个尸体都是一个的,它是一种具体的概念。
2.类和对象
类是描述一组有相同特性和相同行为的对象的集合。对象或实体所拥有的特征在类中表示时成为类的属性。例如每个人都有姓名、性别和年龄,这是人共有的特征。但是每一个对象的属性又各不相同,例如,校长和小王都具有出生年月这个属性,但是他们的出生年月是不同的。
具有相同特性和行为的对象的抽象就是类,因此对象的抽象是类,类的具体化就是对象。类是面向对象程序的基本单位,是抽取了同类对象的共共同属性和方法所形成的对象或尸体的模板。
3.成员变量
public class Person{
public String pld;
public String name;
public int age;
public static void main(String []args){
Person p1=new Person();
Person p2=new Person();
p1.pId="500105198005184390";
p1.name="李成";
p1.age=39;
p2.pId="50010619921115068X";
p2.name="吴华";
p.age=27;
System.out.println("p1的id:"+p1.pId+",姓名:p1.name",年龄:"+p1.age");
System.out.println("p2的id:"+p2.pId+",姓名:p2.name",年龄:"+p2.age");
}
}
输出结果为
p1的id:500105198005184390,姓名:李成,年龄:39
p2的id:50010619921115068X,姓名:吴华,年龄:27
当执行"Person p1=new Person();"语句时,如果这行代码是第一次使用Person类,则系统通常会在第一次使用Person类时加载这个类,并初始化这个类。在类的准备阶段,系统将会为该类的成员变量分配内存空间,并指定默认初始值。如果成员变量是String类型的,则被初始化为null。
当程序执行“p1.pId=“"500105198005184390";”语句时,
p1对象的pId成员变量被赋值为500105198005184390。
4.成员方法
成员方法根据有无返回值和五形式参数划分为四种:午餐无返回(void 类型)的方法、午餐有明确返回值的方法、代餐无返回(void类型)的方法、代餐有明确返回值得方法。
class Person|
puibfic String pid:public String name;public int age;
//无参无返回(voia类型)
public void eato(
System.outprintln(”无参无返回(void 类型):我在吃饭”);
//无参有明确返回值
Public String study0(
retum"无参有明确返回值:我在学习java程序。”;
/带参无返回(void类型)
public void getSalary(float basicSalary, float moneyAward)
float salary = basicSalary + moneyAward;
System.outprintln("带参无返回(void类型):我的工资是"+salary);
/带参有明确返回值
public float purchase(String mall, float money, String commodit)
System.out.println(”带参有明确返回值:我在”+ mall+"花费了"+money
return money;
”购买了"+commodit);
public class Demo4_2{
public static void main(String[] args)(
Person pl = new Person();
Person p2 = new Person();
p1.pId="500105198005184390";p2.pId="50010619921115068X";p1.name="李成”;
p2.name ="吴华”;
pl.age =39;
p2.age=27;
p1.eat();
System.out prindln(pl study)
p1.getSalary(2000f,2500f);
System.out primln我个人消类+pl purchase"网上商城”,200,~衣服”)+”元);
}
}
输出结果为
无参无返回(void类型):我在吃饭
无参有明确返回值:我在学习java程序。
带参无返回(void类型):我的工资是4500.0
带参明确返回值:我在网上上册灰姑娘花费了200.0购买衣服
我今天消费了200.0元
5.this关键字
this关键字是java常用的关键字,可用于任何势力方法内,可指向当前对象,也可只想对其调用当前方法的对象,或者在需要当前类型对象引用时使用。另外,当一个类的属性名和访问该属性的方法参数相同时,则需要使用this关键字来访问类中的属性,以区分类的属性和方法的参数
public class Staff{
private String name;
private double salary;
private int age;
public Staff(String name,double salary,int age){
super();
this.name=name;
this.salary=salary;
this.age=age;
}
}
在上述代码中,name、salary和age的作用域是private,因此在类外部无法对他们的值进行设置。为了解决这个问题,可以为Staff类添加一个构造方法,然后再构造方法中传递参数进行修改。
在Staff类的构造方法中使用的this关键字对属性name、salary和age复制,this表示当前对象。"this.bane=name"语句表示一个赋值语句,等号左边的this.name是指当前对象具有的变量name,等号右边的name表示参数传递过来的数值。
6.static关键字
(1)修饰成员变量
static常用的功能就是修饰类的属性和方法,让它们成为类的成员属性和方法,通常将用static修饰的成员成为类成员或者静态成员。相对而言,非静态的对象的属性和方法就叫实例成员或非静态成员
(2)修饰成员方法
static的另一个作用,就是修饰成员方法。相比于修饰成员属性,修饰成员方法对于数据的储存并不会产生多大的影响,因为方法本来就是存放在类的定义当中的。static修饰成员方法的作用,就是可以使用"类名.方法名"的方式操作方法,避免了要创建对象的繁琐和资源消耗。
(3)静态块
在创建对象是,static修饰的成员会首先被初始化。而且还可以看到如果有多个static修饰的成员,那么会按照他马恩的先后位置进行初始化。