java面向对象(类、对象、属性、方法、构造、this)

  • Post author:
  • Post category:java



*了解类和对象及其关系

*掌握定义类和创建对象

*理解构造方法的含义

对象


:用来描述客观事物的一个


实体


,由一组属性和方法构成



属性


:对象具有的各种特征

每个对象的每个属性都有特定值;例如小红和小明的年龄,姓名不一样



方法


:对象执行的操作




:——–抽象

类是对象概括,是对象的分类

具有相同属性和方法的一组对象的集合

是概念模型,描述对象拥有的特征(属性)和行为(方法)

类与对象的关系




类是对象的描述,对象是类的个体;类是抽象的,对象是具体的;程序中由类产生对象;面向对象一共有三个特征:封装,继承,多态




—–(构造)—–>


对象


—–(使用对象)—–>


对象.方法()

面向对象编程基本步骤:定义类 构造对象 使用对象

格式




类: 【访问控制符】 class 类名{ }

属性:【访问控制符】 数据类型 变量名;

方法:【访问控制符】 void|返回值类型 方法名;

类的组成:

如何描述类:属性、方法、构造函数

实例:

package com.jredu.ch07;

/**

* 创建了一个类:狗

* @author Administrator

*

*/

public class Dog {


//属性

public String name;


//名称

public int age;


//年龄

public String color;


//颜色

public String size;


//大小

public char sex;


//性别



//方法

public void say(){


System.out.println(“开始叫:汪汪汪”);

}


public void eat(){


System.out.println(“开始吃饭”);

}


public void sleep(){


System.out.println(“开始睡觉”);

}


public void run(){


System.out.println(“开始跑”);

}


public void pee(){


System.out.println(“开始撒尿”);

}

//调用

public static void main(String[] args) {


Dog dog=new Dog();

dog.name=”哈士奇”;

dog.age=1;

dog.sex=’公’;

dog.color=”灰色”;

dog.size=”中型犬”;

System.out.println(dog.name);

dog.eat();

dog.sleep();

}

}

构造对象

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

例如:Person pobj=new Person();

内存结构:


对象的使用:

对象.属性——-实例中


绿色


标注属性定义及属性调用

对象.方法——-实例中


粉红色


标注创建方法及方法调用

package com.jredu.ch07;

public class HuLuWa {




public String name;



public String color;



public String skill;




public void eat(){




System.out.println(“吃吃吃”);



}



public void say(){




System.out.println(“还我爷爷”);



}

public static void main(String[] args) {


HuLuWa dawa=new HuLuWa();


//创建对象



dawa.name=”大娃”;



dawa.color=”红色”;



dawa.skill=”翻天覆地、力大无穷”;

System.out.println(dawa.name);

System.out.println(dawa.color);

System.out.println(dawa.skill);



dawa.say();



dawa.eat();



}

}

构造函数

格式:

public 类名(参数列表){


}

特点:1.与类名同名

2.没有返回值

默认情况下,创建一个类后,系统自动会创建一个无参构造函数,但此时构造函数是省略的,当创建有参函数后,系统会删除无参函数,这时,你需要重新创建无参函数。

public HuLuWa(){ }

构造函数是隐含的

构造函数作用1.初始化,创建对象

2.在创建对象时,可以预先给属性赋值

无参构造函数


,系统会给每一个类创建的构造函数,默认构造函数没有参数,括号里为空

public class Person {


public String name;//姓名

public char sex;//性别

public void show(){


System.out.println(“我的名字是”+name);

System.out.println(“我的性别是”+sex);

}


public static void main(String[] args) {


// TODO Auto-generated method stub


Person p=new Person();

p.name=”张三”;

p.sex=’男’;

p.show();

}

}


this 关键字


:代指将来本类的对象

注:相同名字,this指代,颜色一样的指同一个

默认情况,变量代表离它最近的,加this后可以代指全局的

public class Person {


public String


name


;//姓名

public char


sex


;//性别

public Person(String


name


,char


sex)


{




//this 代指将来本类的对象

this.


name


=


name


;

this.


sex


=


sex


;

}

实例:有参构造函数的使用

package com.jredu.ch07;

public class JieShao {


public String name;

public int age;

public char sex;

public double tall;

public double weight;


public JieShao(String name,int age,char sex){


this.name=name;

this.age=age;

this.sex=sex;

}

public void show(){


System.out.println(“大家好”);

System.out.println(“我叫”+name+”,今年”+age+”岁”);

System.out.println(“我是一个身高”+tall+”,体重”+weight+”的”+sex+”人”);

}


public void show1(String content){


System.out.println(name+”的工作理念是:”+content);

}


public static void main(String[] args) {


JieShao m=new JieShao(“阿宝”, 25, ‘男’);

m.tall=175.0;

m.weight=120.0;

m.show();

System.out.println(“================================”);

JieShao n=new JieShao(“美美”,21,’女’);

n.tall=165.0;

n.weight=100.0;

n.show();

n.show1(“为了更好的生活”);

}

}



版权声明:本文为sun_smile1原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。