java类构造_java类 对象 和构造方法

github地址:https://github.com/lily1010/java_learn/tree/master/dog

java中对象和类

java中万物皆对象,比如说动物,里面有猫,狗,鱼等等,他们都能跑,都能呼吸,总之他们有一些动物的共同特征,java中可以把他们归为一类。这就是java中的类;而猫,狗等,就是这个类中的一个具体的对象。

猫,狗又有一些动作行为,就是方法.

当你想调用那些动作行为的时候,不能直接在类中调用,因为不同的动物的行为不一样,你就必须new一个对象,来调用.

java中类

先来看个例子

public classDog{

String name;intage;void bark(){ //汪汪叫

System.out.println("汪汪,不要过来");

}void hungry(){ //饥饿

System.out.println("主人,我饿了");

}

}

对上面例子说明:

public 是类的修饰符,表明该类是公共类,可以被其他类访问。

class 是定义类的关键字。

Dog 是类名称。

name、age 是类的成员变量,也叫属性;bark()、hungry() 是类中的函数,也叫方法。

java变量类型

一个类可以包含以下类型变量:

局部变量:在方法或者语句块中定义的变量被称为局部变量。变量声明和初始化都是在方法中,方法结束后,变量就会自动销毁。

成员变量:成员变量是定义在类中、方法体之外的变量。这种变量在创建对象的时候实例化(分配内存)。成员变量可以被类中的方法和特定类的语句访问。

类变量:类变量也声明在类中,方法体之外,但必须声明为static类型。static 也是修饰符的一种。

构造方法

注意事项:

在类实例化的过程中自动执行的方法叫做构造方法,它不需要你手动调用。构造方法可以在类实例化的过程中做一些初始化的工作。

构造方法的名称必须与类的名称相同,并且没有返回值。

每个类都有构造方法。如果没有显式地为类定义构造方法,Java编译器将会为该类提供一个默认的构造方法。

举个栗子:

packagecom.lechebang.www;/*** Created by manlili on 2016/9/21.*/

public classDog{

String name;intage;public Dog () { //构造方法

System.out.println("我是构造方法");

}void bark(){ //汪汪叫

System.out.println("汪汪,不要过来");

}void hungry(){ //饥饿

System.out.println("主人,我饿了");

}

}

Java中对象

对象是根据类创建的。在Java中,使用关键字new来创建一个新的对象。创建对象需要以下三步:

①声明:声明一个对象,包括对象名称和对象类型。

②实例化:使用关键字new来创建一个对象。

③初始化:使用new创建对象时,会调用构造方法初始化对象。

举个栗子:

public classDog{

String name;intage;public Dog () { //构造方法

System.out.println("我是构造方法");

}void bark(){ //汪汪叫

System.out.println("汪汪,不要过来");

}void hungry(){ //饥饿

System.out.println("主人,我饿了");

}public static voidmain(String[] args) {

Dog myDog= newDog();

}

}

执行结果是

20757541fb447db1f16a524c5839ecf8.png

访问实例变量和方法

//实例化

Dog myDog = new Dog("花花", 3);//通过点号访问成员变量

myDog.name;//通过点号访问成员方法

myDog.bark();

举个例子:

public classDog2{

String name;intage;//构造方法,没有返回值

Dog2(String name1, intage1){

name=name1;

age=age1;

System.out.println("感谢主人领养了我");

}//普通方法,必须有返回值

voidbark(){

System.out.println("汪汪,不要过来");

}voidhungry(){

System.out.println("主人,我饿了");

}public static voidmain(String arg[]){//创建对象时传递的参数要与构造方法参数列表对应

Dog2 myDog = new Dog2("花花", 3);

String name=myDog.name;int age =myDog.age;

System.out.println("狗狗的名字是"+name+";狗狗年龄是"+age);

myDog.bark();

myDog.hungry();

}

}

运行结果:

7d7e851d278a6e0c6c44636d9afa8cce.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值