java编写类private_java基础:4.1 对象和类(一)、静态量、public、private

目录

从这章节开始,要慢慢养成——面向对象编程的思维,使用对象进行程序设计。

1、定义通用类

引入——通用类来定义同一类型的对象,一个对象的属性/特征/状态——数据域(变量)表示,一个对象的行为——方法表示。

//UML类图中的表示方法

ClassName(parameterName:parameterType...)

{

...

methodName(parameterName:parameterType):return

}

//定义一个类

public class TestClass {

public static void main(String[] args) {

// TODO Auto-generated method stub

Circle1 NO1 = new Circle(5); //使用构造方法创建对象

Circle1 NO2 = new Circle(3);

double s1=NO1.getArea(); //调用对象上的实例方法的过程称为调用对象

NO2.setRadius(10);

double s2=NO2.getArea();

System.out.printf("s1=%f,s2=%f",s1,s2);

System.out.println(" Area is " + new Circle1(50).getArea()); //有时候,一个对象在创建之后并不需要引用。在这种情况下,可以创建一个对象,而并不将它明确地賦值给一个变量。

}

}

class Circle{

double radius;

Circle(){ //无参构造方法(默认)

radius=1;

}

Circle(double newRadius){

radius = newRadius;

}

double getArea(){ //实例方法:因为只能在具体的实例上调用

return radius*radius*Math.PI;

}

void setRadius(double newRadius){

radius = newRadius;

}

}

class Student{

String name;

int age;

boolean isSci;

char gender;

}

2、无引用对象数据的默认值

对于上面程序中申明的String name;     int age;   boolean isSci;    char gender;

如果一个引用类型的数据域没有引用任何对象,引用类型数据域的默认值是rum, 数值类型数据域的默认值是0, boolean 类型数据域的默认值是false, 而char 类型数据域的默认值是’\u000'

Student student = new Student();

System.out.println(student.name);

System.out.println(student.age);

System.out.println(student.isSci);

System.out.println(student.gender);

显示的结果是:

null

0

false

3、对象的赋值

我们在创建对象时,使用的语句是:Student student = new Student();简单的说,即:student是一个包含对Student对象引用的变量。对引用类型变量来说,对应内存所存储的值是一个引用,是对象的存储地址。

对于语句:Circle1 C1 = new Circle(5); Circle1 C2 = new Circle(3);

赋值:C2=C1;是将C1的引用赋值给C2,他俩指向了同一个Circle对象C1。原先C2指向的内存空间成为了垃圾,将被java运行系统检测后自动回收(垃圾回收)

4、静态变量、常量、方法

静态变量被类中的所有对象所共享。静态方法不能访问类中的实例成员。

首先,什么是实例/实例变量。Circle1 C1 = new Circle(5);Circle1 C2= new Circle(3);

C1 C2即是我们创建的两个实例,radius分别等于5和3;radius就是两个实例变量。实例变量是绑定到类的某个特定实例的

如果想让一个类的所有实例共享数据,就要使用静态变量/类变量

若在class Cricle1{...}中增加一个静态变量/静态方法

//静态变量:

static int numberOfObjects;

//静态方法:

static int numberOfObjects(){

return numberOfObjects;

}

//静态常量

final static int PI = 3.141592654;

申明为静态量后,该类的所有对象共享其值。

main方法也是静态方法

5、可见修饰符public

可以在方法和数据域前使public修饰符,表示它们可以被任何其他的类访问。

如果没有可见修饰符public,则只能被同一个包(程序第一行申明:package packageName)中的任何一个类访问。

6、private

private : 限定方法和数据域只能在它自己的类中被访问,只能应用在类的成员上。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值