java学习笔记(七) -- 初涉对象

1、句柄

创建句柄的时候,不一定要与对象连接,但是一定要初期化。

String s = “abcd”;

s是句柄


2、创建对象

关键字 new

String s = new String("abcd");

对象被保存在“堆”中(一种常规用途的内存池,也在RAM区域)


3、作用域

作用域决定了变量的可见性和存在时间。通常以“{ }”的位置来决定。

对象的作用域,

{
String s = new String("abcd");
}
句柄s会在作用域的终点消失。但是s指向的String对象还占据空间,但是已经无法再访问对象了。

C++中,需要手动清除使用完的对象,java则不需要。


4、创建新的class

关键字 class

class NewType {}

引用新类型。创建对象。

NewType a = new NewType();


5、字段和方法

类: 

数据成员(俗称 字段)

函数成员(俗称 方法(Method))

包含了 名字、自变量、返回类型及主体。

返回类型 方法名( /* 自变量列表*/ ) {/* 方法主体 */}

        ①返回值类型是调用方法之后返回的数据类型。

②方法名是方法的标识和引用。

③自变量是传递参数的数据类型。

④java的方法只能作为类的一部分创建。

⑤传递对象时,通常传递的都是对象的句柄。


static的作用

1、若一个成员被声明为static的话,它能够在它的类的任何对象创建之前被访问,而不必引用任何对象。

2、任何变量和方法都可以被static。main是最常见的,程序最先开始执行的就是main()方法,所以经常被声明为static。

       通常情况下,类成员通过对象的实例化去调用。但是如果希望独立于类的其他对象,可以通过声明static去实现。

       变量的static就是讲变量变成全局变量。


代码部分:

public class ObjectText {
	
	// 变量的static 
	private static double ALL_STA = 9;
	
	/**
	 * main方法通常都要static
	 */
	public static void main (String[] args) {
		
		// 声明一个对象
		ObjectText ob = new ObjectText();
		// 需要对象的非静态调用
		double sum = ob.compute(1,2);
		
		System.out.println("sum = " + sum);
		// 无需对象的静态调用
		staTmp();
	}
 	
 	/**
 	 * 非静态
 	 */
    private double compute(double dou1, double dou2) {
    	
    	// ALL_STA之后变成全局变量
    	return dou1 + dou2 + ALL_STA;
    }
    
    /**
     * 静态
     */
    private static void staTmp() {
    	
    	System.out.println("Static");
    }
    
}

输出结果:

sum = 12.0
Static












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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值