类与对象(一)对象和类的基本概念、类与对象的定义和使用

对象和类的基本概念

Java语言中的对象是对现实生活的模拟,现实生活中的对象存在于现实生活中,Java语言中的对象(实例)在计算机内存中。ps:Java中的对象也称实例

我们在认识事物时要知道他的属性和功能,能做哪些事情,Java中的对象也是如此,只是叫法不同,属性也称全局变量(也称作成员变量),功能也可称之为方法。

Java语言把一组对象中相同的属性和方法抽象到一个Java源文件中就形成了一个类。

类是对象的模板,对象是类的实例,类只有通过对象才可以使用,但是在写代码时会先写类,在产生对象。类不能直接使用,对象可以直接使用。

类是一种数据类型,是对象的数据类型(不同于int等基本类型:类具有方法)。

类与对象的定义和使用

类的定义:

在Java中定义类,使用关键字class完成。语法如下:

public class  类名 {
	//属性
	属性1类型   属性1;
	属性2类型   属性2;
		…
	属性n类型   属性n;

	//方法
	方法1;
	方法2;
		…
	方法m;
}

先定义类名,再定义属性,最后定义方法。

类名定义规则:类名的命名规则:1、符合标识符命名规范;2、类名必须使用英文字母,首字母应大写,如Hello、People等。3、当类名由多个”单词”组合而成时,每个单词的首字母都要大写。如 Time、Game、Dog、DateUtil等。

对象的定义和使用:

首先声明一个类:

class Person {     // 类名称首字母大写
    String name ;
    int age ;
    public void tell() {        // 没有static
          System.out.println("姓名:" + name + ",年龄:" + age) ;
    }
}

类定义完成后,肯定无法使用,需要创建对象来调用它。类属于引用数据类型,所以对象的产生格式如下:

通过new关键字创建对象,创建对象又称实例化对象。比如:类名称 对象名称 = new 类名称 () ;

此类的声明对象方式为:

Person person = new Person();

使用”.”运算符访问对象的属性和方法。定义方法:对象.属性:表示调用类之中的属性; 对象.方法():表示调用类之中的方法。下面是对对象的属性和方法的访问方式:

person.name = "小李";
person.tell();

例子:(使用对象操作类)

package com.wz.classandobj;

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

public class TestDemo {
        public static void main(String args[]) {
            Person per = new Person() ;// 声明并实例化对象
            per.name = "张三" ;//操作属性内容
            per.age = 30 ;//操作属性内容
            per.get() ;//调用类中的get()方法
        }
}

结果为:

姓名:张三,年龄:30

那么,说了这么多,我们在实例化一个类时内存中到底有什么变化呢?

我们从内存角度分析,首先给出两种内存空间的概念:

(1)  堆内存:保存对象的属性内容。堆内存需要用new关键字来分配空间。

(2)  栈内存:保存的是堆内存的地址(可以理解为栈内存保存的是对象的名字)

任何情况下,只要看见关键字new,都表示要分配新的堆内存空间,一旦堆内存空间分配了,里面就会有类中定义的属性,并且属性内容都是其对应数据类型的默认值。

 

  • 2
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值