钟表类: 其中 1.没有static修饰的变量(数据成员)称为实例变量; 1.用static修饰。 例: 其中PI为类变量。 具有实例方法的圆类: 其中有三个实例方法, 例:将摄氏温度(centigrade)转换成华氏温度(fahrenheit) 方法调用 1.package1[.package…]表明包的层次,对应于文件目录; 例:圆类 其他的public类中无法访问该类中的 例: 一共定义了三种构造方法,可以看出名字都相同,但是由于参数不同,实现的功能也不同。文章目录
类声明与对象创建
类与对象的关系
类声明
[public] [abstract| final] class类名称 [extends父类名称][implements接口名称列表] { 数据成员声明及初始化; 方法声明及方法体; }
implements之后
public class Clock { //变量成员 int hour ; int minute ; int second ; //方法成员 public void setTime(int newH, int newM, int newS){ hour= newH ; minute= newM ; second= newS ; } public void showTime() { System.out.println(hour+ "." + minute+"." +second); } } hour,minute,second为钟表类的属性,setTime,showTime为钟表类的行为。对象引用声明
类名 引用变量名;
Clock是已经声明的类名,声明引用变量aclock ,用于存储该类对象的引用: Clock aclock;对象的创建
new <类名>()
aclock=new Clock()
例如: aclock=null;数据成员
1.表示对象的状态
2.可以是任意的数据类型数据成员声明
[public | protected | private] [static][ final][transient] [volatile] 数据类型变量名1[=变量初值],变量名2[=变量初值];
1.public、 protected、 private 为访问控制符。
2.static指明这是一 个静态成员变量(类变量)。
3.final指明变量的值不能被修改。
4.transient指明变量是不需要序列化的.
5.volatile知名变量是一个共享变量实例变量
2.存储所有实例都需要的属性,不同实例的属性值可能不同;
3.可通过下面的表达式访问
类变量(静态变量)
2.在整个类中只有一一个值。
3.类初始化的同时就被赋值。
类中所有对象都相同的属性。
经常需要共享的数据。
系统中用到的一 些常量值。
<类名|实例名>. <类变量名>public class Circle{ static double PI = 3.1415926 int redius; } 方法成员
语法形式
[public | protected | private][static] [final][abstract] [native] [synchronized] 返回类型方法名([参数列表]) [throws exceptionList] { 方法体 }
public、protected、 private 控制访问权限。static指明这是一个类方法(静态方法)。final指明这是一一个终结方法。abstract指明这是一个抽象方法。native用来集成java代码和其它语言的代码(本课程不涉及)。synchronized用来控制多个并发线程对共享数据的访问。
实例方法
给对象发消息,使用对象的某个行为/功能:调用对象的某个方法。
<对象名>.<方法名> ( [参数列表] )
<对象名>为消息的接收者。
值传递:参数类型为基本数据类型时
引用传递:参数类型为对象类型或数组时public class Circle { static double PI = 3.1415926; int radius; public double circumference(){ //求圆周长 return 2*PI*radius; } public void enlarge(int factor){ //把圆扩大factor倍 radius = radius*factor; } public boolean fitsInside (Rectangle r) { //判断能否被长方形包围 return (2 *radius < r.width) && (2* radius < r.height); } } fitsInside方法的参数类型为对象。类方法
转换方法centigrade ToFahrenheit放在类Converter中public class Converter { public static int centigradeToFahrenheit(int cent) { return (cent*9/ 5 + 32); } }
Converter.centigradeToFahrenheit(40)包
包的作用
包的命名
编译单元
包的声明
例如: package Mypackage;
不含有包声明的编译单元是默认包的一部分。包与目录
假如我建了一个com.sd.db的包

那么就会自动生成一个com>sd>db的目录

引入包
import package1[.packae...]. (classname |*);
2.classname指明所要引入的类名;
3.如果要引入一个包中的所有类,可以使用星号(*)来代替类名。类的访问权限控制
类型
无修饰(默认)
public
同一包中的类
是
是
不同包中的类
否
是
类的成员访问权限控制
可以被其他任何方法访问(前提是对类成员所属的类有访问权限)
只可被同一类及其子类的方法访问
只可被同一类的方法访问
仅允许同一个包内的访问;又被称为“包( package)访问权限”类成员在不同范围是否可以被访问
类型
private
无修饰
protected
public
同一类
是
是
是
是
同一包中的子类
否
是
是
是
同一包中的非子类
否
是
是
是
不同包中的子类
否
否
是
是
不同包中的非子类
否
否
否
是
public Class Circle { static double PI = 3.14159265; private int radius; public doyble circumference() { return 2 * PI * radius; } } radius属性。
如果想要访问:
功能是取得属性变量的值。get方法名以get 开头,后面是实例变量的名字
例如:public int getRadius(){ return radius; }
功能是修改属性变量的值。set方法名以set开头,后面是实例变量的名字
例如:public void setRadius(int r){ radius = r; } this关键字
例如:public void setRadius(int radius){ this.radius = radius; } 对象初始化
系统在生成对象时,会为对象分配内存空间,并自动调用构造方法对实例变量进行初始化
对象不再使用时,系统会调用垃圾回收程序将其占用的内存回收构造方法
默认构造方法
例变量赋初值,则对象的属性值为零或空;自定义构造方法与方法重载
一个类中有两个及以上同名的方法,但参数表不同,这种情况就被称为方法重载。在方法调用时,可以通过参数列表的
不同来辨别应调用哪一个方法。
化方式。public class BankAccount { String ownerName; int accountNumber; float balance; //为BankAccount声明一个有三个参数的构造方法 public BankAccount(String initName, int initAccountNumber, float initBalance) { ownerName = initName; accountNumber = initAccountNumber; balance = initBalance; } //假设一个新帐号的初始余额可以为0,则可增加一个带有两个参数的构造方法 public BankAccount(String initName, int initAccountNumber) { ownerName = initName; accountNumber = initAccountNumber; balance = 0.0f; } //无参数的构造方法自定 义默认的初始化方式 public BankAccount() { ownerName =" "; accountNumber = 999999; balance = 0.0f; } }
本网页所有视频内容由 imoviebox边看边下-网页视频下载, iurlBox网页地址收藏管理器 下载并得到。
ImovieBox网页视频下载器 下载地址: ImovieBox网页视频下载器-最新版本下载
本文章由: imapbox邮箱云存储,邮箱网盘,ImageBox 图片批量下载器,网页图片批量下载专家,网页图片批量下载器,获取到文章图片,imoviebox网页视频批量下载器,下载视频内容,为您提供.
阅读和此文章类似的: 全球云计算
官方软件产品操作指南 (170)