面向对象(第一部分)

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修饰的成员,那么会按照他马恩的先后位置进行初始化。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值