Java语言程序设计与数据结构(基础篇)笔记 ——第九章 类与对象

 

9.5 通过引用变量访问对象

 

9.5.1 引用变量和引用类型

  • 要点提示:对象的数据和方法可以用点运算符(.)通过对象的引用进行访问

本质上说,类是一种引用类型,这意味着该类类型的变量都可以引用该类的一个实例

如: myCircle引用了一个Circle对象

Circle myCircle = new Circle();

注意:

在Java中,数组被看作是对象;数组使用new操作符创建的,一个数组变量实际上是一个包含数组引用的变量

 


9.5.2  访问对象的数据和方法

  • 警告:

回想一下,我们使用例如 Math.pow(3, 2) 来调用Math类中的方法 ;但是我们不能对自己创建的诸如Circle这种类来使用  Circle.getArea()  这种用法。因为在Math类中的所有方法都是使用关键字static定义的静态方法。但是getArea()是实例方法,所以它是非静态的,必须使用例如 myCircle.getArea() 这种方式从对象调用

  • 匿名对象:  

有时候对象在创建之后不需要引用,这种情况下可以创建一个对象,而不将它明确地赋值给一个变量:

new Circle();

//或者

System.out.println("Area is " + new Circle(5).getArea());

 


9.7 静态变量、常量和方法

  • 要点提示:静态变量被类中的所有对象所共享;静态方法不能访问类中的实例成员(即实例数据域和方法)

 

class Circle{

    double radius;
    Circle(double a){
        radius = a;
    }
    double getRadius(){
        return radius;
    }

}

Circle类中的数据域radius是一个实例变量,它属于类中的某个特定的实例

如果要让一个类中的所有实例共享数据,那么就要使用静态变量,也称为类变量;静态变量将变量值存储在一个公共的内存地址,由于是公共的地址,当某一个对象修改了静态变量的值时,那么同一个类的所有变量都会收到影响。

静态方法不能调用实例方法或者访问实例数据域,因为静态方法和静态数据域不属于某个特定的对象

 


9.8 可见修饰符

可以在类,方法和数据域前使用public可见修饰符,这可以使得它们可以被任何其他类访问

若没有使用,则可以被同一个包中的任意一个类访问(称为包私有/包访问)

Java为类成员提供了 private 和 protected 修饰符

一般而言,数据域都应该被设置为私有的,所有的构造方法和方法都应该被设置为公有的

 

  • 警告:private只能用于类的成员,public可以用于类或类的成员,在局部变量上两个都不能使用

 


 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值