1.7 Java类和对象的概念

Java类和对象 概念

主要解释类和对象概念,以及声明,定义,创建,属性,方法,构造方法,实例,实例化的概念,以及特殊函数main

http://www.weixueyuan.net/view/6311.html

Createddate: 2016-01-15

updateddate: 2016-01-22

 

 

  1. 什么是类和对象

可以将类比喻成图纸,对象比喻成零件,图纸说明了零件的参数及其承担的任务;一张图纸可以生产出具有相同性质的零件,不同图纸可以生产不同类型的零件。

 

  1. 类和对象使用

Java中,使用new关键字,就可以通过类来创建对象,即将图纸生产成零件,这个过程叫做类的实例化,因此也称对象是类的一个实例。

 

类的实例化分为三个步骤:

//第1步:通过类定义一个变量 stu1(通常称为声明对象)

Student stu1;

//第2: 使用new关键字创建对象stu1(通常称为创建对象),3: 使用构造函数初始话对象(进行参数化传值),

stu1=new Student();

 

注意:类只是一张图纸,起到说明的作用,不占用内存空间;对象才是具体的零件,要有地方来存放,才会占用内存空间。

 

  1. 类的成员

类所包含的变量和函数都有特定的称呼,变量被称为属性(通常也称成员变量)

函数被称为方法(普通方法和构造方法)

属性和方法统称为类的成员。

 

  1. 访问类的成员

访问有两层意思:一个是赋值,另一个获取值

//访问类的变量(通常称为属性)

stu1.name="Mike";

 

//访问类的函数(通常称为方法)

stu1.say();

 

  1. 声明,定义,创建之间的区别

所谓定义就是(编译器)创建一个对象,为这个对象分配一块内存,并给它取上一个名字,这个名字就是就是我们经常所说的变量名或对象名。
声明有
2重含义:

  • 告诉编译器一个名字(标识符),这个名字已经匹配到一块内存上,下面的代码用到变量或者对象是在别的地方定义的。声明可以出现多次。
  • 告诉编译器一个名字(标识符),这个名字已经被预定了,别的地方再也不能用它来作为变量名或对象名。


例如:变量
A

如果int A, 就是声明和定义, 告诉编译器A是一个整数型的变量,并进行初始化,分配了内存空间

 

例如: 函数A

如果 void A(), 就是声明和定义, 告诉编译器A是一个函数A, 并进行初始化,分配了内存空间

 

例如:类A

如果A a;就是一个声明,告诉编译器aA类的一个对象变量,但是不进行初始化;

如果以后a=new A();这就是初始化,分配了内存空间。即创建了对象

 

总之, 基本类型变量的声明和定义(初始化)是同时产生的;而对于对象来说,声明和定义是分开的。声明的最终目的是为了提前使用,即在定义之前使用,如果不需要提前使用就没有单独声明的必要,变量是如此,函数也是如此,所以声明不会分配存储空间,只有定义时才会分配存储空间

 

  1. Java中项目的组织结构


 

 

 

  1. 例子
/*

Java类和对象 概念

主要解释类和对象概念,以及声明,定义,创建,属性,方法,构造方法,实例,实例化的概念,以及特殊函数main

http://www.weixueyuan.net/view/6311.html

Created date: 2016-01-15

updated date: 2016-01-22

*/

 

//通过package关键字,声明一个package1包

package package1;


//通过public访问修饰符和class关键字,声明一个 类classexample1_ClassAndObject_1

public class example1_ClassAndObject_1 {

 
/*

定义一个main方法(函数)

public:访问修饰符,权限最大

static:静态方法,存储在静态存储区,意味着:方法无需实例化对象来调用的方法

main:函数名,jvm识别的特殊函数名

void:意味着:方法无返回值

Sting[] arg: 字符串数组参数arg

*/

public static void main (String[] args) {

//通过类定义一个变量 stu1(通常称为声明对象)

Student stu1;

//使用new关键字创建对象stu1(通常称为创建对象),然后使用构造函数初始化对象(进行参数化传值),

stu1=new Student();

//我们也可以合并一起写,整个过程称为实例化,对象是类的一个实例

//Student stu1=new Student();


//访问类的变量(通常称为属性)

stu1.name="Mike";

stu1.age=20;

stu1.score=100;


//访问类的函数(通常称为方法)

stu1.say();

}

}

 

//声明一个类Student,定义类成员(包括属性和方法)

class Student {

//定义变量,变量被称为属性(通常也称成员变量)

String name;
int age;
float score;

//定义构造函数(通常称为构造方法)

Student () {

}

//定义普通函数(通常函数被称为普通方法)
void say() {
System.out.println("Name: "+name+""+"Age:"+age+"Score: "+score);

}
}


运行结果:

Name:MikeAge: 20Score: 100.0

 

参考文献:


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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值