java 类 解析_Java类详解

1 //package 语句 声明 类的位置,会建立相应的文件夹,存放类2 //package 包名; 只能有一条,不能写多个

3 packageorg.java;4

5 //import 语句6 //一个类可能会需要另一个类声明的ui想 类作为自己的成员 或 者反发的局部变量7 //若两个类不在同一个包中,就需要导入import语句8 //import 类所在的包 的名字

9 import java.util.*;//包含数据结构类

10 import java.io.*;//包含所有的输入/输出类

11 import java.sql.*;//包含数据库类

12 import java.net.*;//包含所有实现网络功能的类

13 import java.lang.*;//包含所有的基本类

14

15 /*

16 面向对象编程:有三个特性,封装性,继承性,多态性17

18 java 类总结19 1:类的实现20 包括:类的声明和类体21 1.1:类的声明:22 格式如下:class 类名{23 类体24 }25 1.2:类体:26 1.2.1变量的声明,刻画属性27 1.2.2方法的定义,刻画功能28 变量的声明部分声明的变量为:成员变量29 方法体中的变量为和方法的参数为:局部变量30

31 访问权限:32 类的访问权限:33 public:其他包中的类可以访问这个 类34 缺省: 这个类 只能在本包中 进行访问35 成员的访问权限:36 public:都可以访问37 private:只能在本类中进行访问38 protected: 在本包中 和 子类中 能被访问,其他的访问出错39 缺省:在本包中 能被访问40 */

41 public classTest {42 //Test为类名:合法标识符:字母,下划线,数字和美元组成,第一个字符不能为数字,且拉丁字母首字母大写;43

44 //变量的声明:成员变量->在整个类内部有效45 //成员变量分为:实例变量 和 类变量(static关键字修饰,也称为静态变量)46 //方法体中声明的变量和方法的参数为:局部变量->只在方法中有效47

48 //方法:实例方法 和 类方法49 //实例方法:没有static关键字,50 //类方法:加上static 关键字 即为类方法51

52

53 //变量的类型:整型,浮点型,字符型等基本类型,和数组,对象,接口等引用类型54 //基本类型数据:55 //逻辑类型:boolean56 //整数类型:byte,short,int,long;//分别分配,1,2,4,8 个字节57 //字符类型:char;//2个字节58 //浮点类型:float,doble;//分别分配4,8个字节59 //注意:级别低的变量 赋值给 级别高的变量的时候,会自动进行类型转换60 //但是级别高的变量 赋值给 级别低的变量的时候,需要显示的类型转换

61 int width;//实例变量

62 int height;//实例变量

63 String name;//实例变量

64 static int cnt;//类变量|静态变量65

66 //类的完整性包括 set方法,get方法,toString方法和功能方法,构造方法(无参,有参)67

68 //功能方法69 //方法的定义包括:方法的声明和方法体70 //格式: 方法的声明{71 //方法体72 //}73 //方法的声明:包括 方法名 和方法返回类型74 //如下 int(返回类型) area(方法名)75 //实例方法:76 //可以操作实例变量,也可以操作类变量;77 //也可调用实例方法,也可以调用类方法;

78 public int area(int width,int height) {//int height 局部变量79 //成员变量的隐藏:若是 局部变量的名字 和 成员变量 名字相同,那么这个方法隐藏了成员变量80 //可以使用this.成员变量的名字,使成员变量有效

81 int tmpData=0;//局部变量,只有初始化之后,才可以使用,否则报错

82 cnt++;//实例方法操作 类变量

83 System.out.println(tmpData);84 this.width=width;85 this.height=height;86 return this.height*this.width;87 }88 //多态包括:两种:重写(overload) 和 重载(Override)89 //重载:方法的名字相同,但是 参数个数不同 或者 参数类型不同90 //重载 area方法->方法类型不同91 //重写:重写父类的方法 或者称为 覆盖父类的方法

92 public double area(double x,doubley) {93 x=width;//this 可省略,操作实例变量

94 y=this.height+1.0;95 return x*y;96 }97

98 //类方法:加上static关键字99 //类方法只能操作类变量,不能操作实例变量100 //只能调用类方法,不能调用实例方法

101 public static intcount() {102 cnt++;//类方法 操作类变量

103 Test.cnt++;//或者通过 类名.类变量操作

104 returncnt;105 }106

107

108 //构造方法:无参109 //构造方法的名字和类名一样

110 publicTest() {111 super();112 }113 //构造方法:有参(也属于重载)

114 public Test(int width, intheight, String name) {115 super();116 this.width =width;117 this.height =height;118 this.name =name;119 }120

121 //get,set方法

122 public intgetWidth() {123 returnwidth;124 }125

126 public void setWidth(intwidth) {127 this.width =width;128 }129 public intgetHeight() {130 returnheight;131 }132 public void setHeight(intheight) {133 this.height =height;134 }135 publicString getName() {136 returnname;137 }138 public voidsetName(String name) {139 this.name =name;140 }141

142 //重写object里面的toString()方法143 //创建类时,若是没有指明父类,那么会默认为object类144 //会继承object里面的所有方法145 //所以这里才能重写 父类object类里面的toString方法146 //重写

147 @Override148 publicString toString() {149 return "Test [width=" + width + ", height=" + height + ", name=" + name + "]";150 }151

152

153

154

155

156 }

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值