创建java类并实例化类对象

创建java类并实例化类对象例一
1.面向对象的编程关注于类的设计
2.设计类实际上就是设计类的成员
3.基本的类的成员,属性(成员变量)&方法

面向对象思想的落地法则一:
1.设计类,并设计类的成员(成员变量&成员方法)
2.通过类,来创建类的对象(也称作类的实例化)

public class zoo {
    public static void main(String[] args) {
        //基本数据类型的声明,数据类型 变量名=初始化值
        //类的实例化:如a1就是一个对象
        Animal a1=new Animal();
        //通过对象调用属性
        a1.name="阳阳";
        a1.age=3;
        System.out.println("name:"+a1.name+" age:"+a1.age);
        //通过对象调用方法
        a1.eat();
        a1.sleep();
    }
}

class Animal{
    //1.属性
    String name;
    int age;
    //2.方法
    public void eat(){
        System.out.println("动物进食");
    }
    public void sleep(){
        System.out.println("动物睡觉");
    }
    //getName是得到name的值
    public String getName(){
        return name;
    }
    //setName是给name设计一个值
    public void setName(String n){
        name=n;
    }
}

二、创建多个对象,彼此各自拥有一套类的属性,当对其中一个属性进行修改时,不会影响到其他对象的属性
类对象的内存解析

public class zoo {
    public static void main(String[] args) {
        int i = 10;
        //基本数据类型的声明,数据类型 变量名=初始化值
        //类的实例化:如a1就是一个对象
        Animal a1 = new Animal();
        //通过对象调用属性
        a1.name = "阳阳";
        a1.age = 3;
        System.out.println("name:" + a1.name + " age:" + a1.age);
        //通过对象调用方法
        a1.eat();
        a1.sleep();
        //再创建一个类的对象
        Animal a2 = new Animal();
        System.out.println("name:" + a2.name + " age:" + a2.age);
        a2.name = "小花";
        System.out.println("name:" + a1.name + " age:" + a1.age);
        System.out.println("name:" + a2.name + " age:" + a2.age);
        //a3不意味着相较于啊a1重新创建的一个对象,而是a1与a3公用一个对象实体
        Animal a3 = a1;
        System.out.println("name:" + a3.name + " age:" + a3.age);//与a1一样
        a3.name = "维尼熊";
        System.out.println("name:" + a1.name + " age:" + a1.age);
    }
}

    class Animal {
        //1.属性
        String name;
        int age;

        //2.方法
        public void eat() {
            System.out.println("动物进食");
        }

        public void sleep() {
            System.out.println("动物睡觉");
        }

        //getName是得到name的值
        public String getName() {
            return name;
        }

        //setName是给name设计一个值
        public void setName(String n) {
            name = n;
        }

    }

三、类的属性(成员变量)
成员变量vs局部变量
局部变量:是在某个方法中的变量
成员变量:在类中定义的变量
在类中没有在其他方法中定义的变量就是成员变量
如public class tip{
int j=10;
}
这个里面的j就是成员变量

public void setName(String n){}
中的n就是一个局部变量
或者是在方法里面定义的也叫局部变量如:
public void addAge(){
int i=2;
age +=i;
}
中的int i=2;这个也是局部变量
成员变量和局部变量的相同点:
1.格式都一样: 数据类型 变量名 = 初始化值
2.都有作用域:局部变量作用在它所存在的方法中,方法变量作用在它所存在的类中。
一旦出了它们所存在的范围就不能使用,除非通过对象的调用(如:.name来调用)

成员变量和局部变量的不同点:
1.声明的位置不同:成员变量声明在类里,方法外。局部变量声明在方法内,和方法的形参部分(public void setName(String n){}的n)
代码块内
2.成员变量的修饰符有四个:public、private、protected、缺省(就是省略不写)(如public class v{
int b=2;
}这里的int前面可以加修饰符)
局部变量没有修饰符,与所在的方法修饰符一样(如public void addAge(){
int i=2;
age +=i;
}这里的i是局部变量,修饰符就是方法的修饰符public)
3.初始化值:无论哪种变量都有初始化值,成员变量如果没有赋值不同的数据类型则有默认的初始化值。
局部变量一定要显示赋值,因为局部变量没有默认的初始化值
4.二者在内存中存放的位置不同:成员变量存在于堆空间中,局部变量存在于栈空间中
四、类的方法:提供某种功能的实现
1.格式:权限修饰符(public、private、protected、缺省(就是省略不写)) 返回值类型(void:无返回值/具体返回值) 方法名(形参,String等){}

2.关于返回值类型:void,表明不需要返回值。
如:public void eat{
System.out.println("进食");
}
有返回值的类型:在方法最后一定有return+返回值类型对应的变量
如:public int getAge(){
return age;
}
记忆:void与return不能同时出现在一个方法内,像一对冤家
3.方法内可以调用本类的其他方法或属性,但是不能在方法内定义方法

//(1)
public class W {
    String name;
    int age;
    String sex;

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public int getAge() {
        return age;
    }

    public void setAge(int age) {
        this.age = age;
    }

    public String getSex() {
        return sex;
    }

    public void setSex(String sex) {
        this.sex = sex;
    }

    public void study(){
        System.out.println("studying");
    }
    public void showAge(){
        System.out.println(age);
    }
    public int addAge(int i){
        age+=i;
        return age;
    }

    public static void main(String[] args) {
        W a=new W();
        a.study();
        a.showAge();
        a.addAge(2);
        a.showAge();//相等于System。out。println(a.age);
        System.out.println();
        //(2)
        W b=new W();
        b.showAge();
        a.showAge();
    }
}
public class circle {
    public static void main(String[] args) {
        Tcircle c1=new Tcircle();
        c1.r=2.3;
        c1.findArea();
    }
}
class Tcircle{
    double r=1.0;
    //提供一个方法,用来获取圆的面积
    public void findArea(){
        System.out.println(3.14 * r * r);
    }
}

原文地址:https://www.cnblogs.com/KeepCalmAndNeverSayNever/p/10111448.html

时间: 2024-11-05 12:11:05

创建java类并实例化类对象的相关文章

PHP面相对象:声明类和实例化类

一.类的声明 1 //使用class关键词+类名+{}声明一个类 2 class Demo { //类名首字母需要大写,命名遵守驼峰命名法 3 var $name; //[修饰词] 变量名 4 5 function test(){ 6 echo "helloworld"; 7 } 8 } 9 10 //实例化对象,使用new关键词 11 $t1 = new Demo; 12 13 //对象的访问 14 $p1->test(); 二.类在内存中的分配 数据段 通常是指用来存放程序中

java第2天:类,对象,封装和构造方法

1 面向对象简述 将 {1,3,45,56,78,90}转化为[1,3,45,56,78,90] 1-2 方法1:面向过程 代码块 public class test { public static void main(String[] args) { int[] array = {1,3,45,56,78,90}; // 打印成[1,3,45,56,78,90] System.out.print("["); for (int i = 0; i < array.length; i

实例化类对象中alloc和inti的区别

在OC中,实例化一个类对象需要通过调用alloc和init两个系统既定方法进行初始化,比如: Fraction *frac=[[Fraction alloc]init]; 两者的区别如下: 1.alloc方法保证对象所对应的类里定义的所有实例变量都变成初始状态,但并没有使该对象本身进行初始化: 2.init方法用于初始化类要实例化的对象,它可以返回一个值,即被初始化的对象. ps:当然实例化一个对象还可以采用一种简便的方式,比如: Fractiion *frac=[Fraction new];

Python第十六天 类的实例化

首先 , 先定义一个 简单的 Person 类 1 class Person: 2 head = 1 3 ear = 2 4 5 def eat(self): 6 print('吃饭') 关于什么是类, 定义类, 类对象,类的实例化,类的初始化  都是初学时非常容易混乱的概念. 有时候, 拿我们生活中比较熟悉的概念, 去 和 新的知识点比较, 相对就会容易理解. 先设想一下,  什么是 人类, 动物类, 植物类 , 鸟类? 人类,      小明 (具体一个人) 动物类,  狮子王 leo(具体

创建Java类并实例化的基本过程

1 package com.sanguosha.java; 2 /* 3 * 面向对象实现的过程 4 * 1.创建类并设计类的成员(成员变量即属性and成员方法即方法) 5 * 2.通过类来创建类的对象,也称类的实例化 6 * 3.通过(对象.属性)和(对象.方法)调用,完成相应的功能 7 */ 8 public class Zoo { 9 public static void main(String[] args) { 10 //基本数据类型的实例化 11 int n=10; 12 //数组的

创建Java类并实例化深入理解

1 package com.sanguosha.java; 2 3 import java.util.Scanner;//导入包 4 5 public class TestPerson { 6 public static void main(String[] args) { 7 //Person类的实例化 8 Person p1=new Person(); 9 p1.eat(); 10 p1.sleep(); 11 p1.info();//调用info()方法来查看人的属性值 12 p1.age

java反射1--产生Class类的实例化对象三个方法

首先每一个类在实例化的时候都会产生一个.class文件.而Class对象既是将.class文件读入内存时,为它创建一个Class对象. 反射就是对Class对象进行操作. 1 package reflect.vo; 2 3 /** 4 * @author guohao 5 * java测试类Student 6 */ 7 public class Student { 8 private String name; 9 private int age; 10 private float score;

java类的初始化和对象的创建顺序

学习java编程思想--类的初始化p146 类的加载顺序* 1加载器启动找到 xxx.class文件,通过extends关键字寻找基类,先加载基类* 2类初始化先初始化static成员变量和static--->* 2先初始化父类的static成员变量和static* 3再初始化本类的static成员变量和static * 类加载之后,对象创建开始* 1先加载父类的非静态成员变量(静态成员变量在类初始化的时候已经加载,非静态成员变量要随对象的创建而初始化)* 2先加载父类的构造函数* 3再加载本类

波哥学JAVA,定义类 创建对象 实例化对象 属性 类调用属性或者方法

定义类 声明对象  创建对象 实例化对象 属性 对象调用属性或者方法 举例,下面定义类了一个类并声明属性,写了一个方法: 创建对象 实例化对象 属性 类调用属性或者方法