美文网首页
类与对象

类与对象

作者: JHW2017 | 来源:发表于2018-07-18 10:51 被阅读0次

1.类的定义
类由方法与属性(变量)组成

class Person{
    String name;
    int age; 
    public void tell() {
        System.out.println("姓名:" + name +",年龄:" + age);
    }
}

方法未加上static,因为方法将由对象调用,而不是与主方法定义在一个类中,有主方法直接调用,public表示可以被任何地方都可以访问。
2.对象的创建及使用
对象属于引用类型,分配内存与数组中相似

public class TestJava {
    Person per = new Person();  
    
}
class Person{
    String name;
    int age; 
    public void tell() {
        System.out.println("姓名:" + name +",年龄:" + age);
    }
}
Person per = null;
per = new Person();

3.引用传递

public class TestJava {
    public static void main(String[] args) {    
        Person per1 = new Person();  
        Person per2 = per1;
        per2.tell();
    }
}
class Person{
    String name;
    int age; 
    public void tell() {
        System.out.println("姓名:" + name +",年龄:" + age);
    }
}

Java垃圾回收机制回收释放不用的内存空间
4.封装性
面向对象形法则不允许队象直接访问属性,需要封装属性及方法.可使用Java反射机制利用getter和setter获取和设置属性。用private声明的属性和方法仅在类的内部使用。在类中,可按this.getname();

public class TestJava {
    public static void main(String[] args) {    
        Person per1 = new Person();  
        per1.setName("zheng");
        per1.tell();
    }
}
class Person{
    private String name;
    private int age;
    public String getName() {
        return name;
    }
    public void setName(String n) {
        name = n;
    }
    public int getAge() {
        return age;
    }
    public void setAge(int n) {
        age = n;
    }
    public void tell() {
        System.out.println("姓名:" + name +",年龄:" + age);
    }
}

5.构造方法:对象实例化时就可以为属性赋值。
方法名与类名一致
构造方法不含返回类型声明且不返回值
若未定义构造方法,编译程序自动生成构造方法。若已经生成,则编译程序不再自动生成。构造方法可以重载。

public class TestJava {
    public static void main(String[] args) {    
          
        Person iio = new Person("zhang",30);
        iio.tell();
    }
}
class Person{
    private String name;
    private int age;
    public Person(String n,int a) {
        name = n;
        age = a;
    }
    public String getName() {
        return name;
    }
    public void setName(String n) {
        this.name = n;
    }
    public int getAge() {
        return age;
    }
    public void setAge(int n) {
        this.age = n;
    }
    public void tell() {
        System.out.println("姓名:" + name +",年龄:" + age);
    }
}

6.匿名对象
一般匿名对象只能使用一次,只在堆内存中开辟空间,不存在栈内存的引用。使用后被垃圾回收机制收回。

public class TestJava {
    public static void main(String[] args) {    
          
        new Person().setName("zheng");
        new Person().tell();
    }
}
class Person{
    private String name;
    private int age;
    public String getName() {
        return name;
    }
    public void setName(String n) {
        this.name = n;
    }
    public int getAge() {
        return age;
    }
    public void setAge(int n) {
        this.age = n;
    }
    public void tell() {
        System.out.println("姓名:" + name +",年龄:" + age);
    }
}

相关文章

  • 类与对象(类与对象定义)

    类与对象的定义和使用 如果在程序之中要定义一个类可以使用class关键字完成,而定义的语法如下: 在这个类中只是定...

  • 函数类和对象区别

    类与类:行为不同 对象与对象:数据不同

  • python入门开发学习笔记之类与对象

    本节重点 掌握什么是类、什么是对象 掌握如何定义及使用类与对象 了解对类与对象之间的关系 类与对象的概念 类即类别...

  • 类对象与类的对象

    类对象(obj.getClass)描述的是类的代码信息,比如哪些属性、属性是什么类型、变量名是什么、哪些方法、方法...

  • python-高级、面向对象

    一、类与对象 二、类和对象

  • Java面向对象笔记

    类和对象 对象的概念 什么是面向对象 类 什么是对象的属性 什么是对象的方法 类与对象的关系/与区别 什么是对象 ...

  • 006-面向对象1

    面向过程与面向对象 开车问题 吃饭问题 做饭问题 类与对象 类的概念 对象的概念 练习: 区分类与对象 类的组成 ...

  • 三、元类对象的本质

    1. 元类对象结构。 与类对象的结构一样。 与类对象比较 2. 元类对象的获取。 通过object_getClas...

  • 格物致知iOS类与对象

    格物致知iOS类与对象 格物致知iOS类与对象

  • 类与对象

    类与对象是整个面向对象之中最为基础的组成单元;类是共性的集合,对象是个性的产物。所有的类都是用来描述出对象的结构,...

网友评论

      本文标题:类与对象

      本文链接:https://www.haomeiwen.com/subject/xqwgpftx.html