JAVA程序设计 - 图文(3)
例如:
public class HelloApplet extends Applet
访问说明符为public,类名HelloApplet,扩展类为JDK包自带的java.applet.Applet类。由于public的存在,所以文件名必须存为HelloApplet.java,同类名保持一致。 2. 类体
类体包括成员变量和方法。
(1) 成员变量:指类的一些属性定义,标志类的静态特征,它的基本格式如下: 访问说明符 数据类型 变量名 其中:
●访问说明符有public、private和protected三种:
public:省略时默认为公有类型,可以由外部对象进行访问。
private:私有类型,只允许在类内部的方法中使用,若从外部访问,必须通过构造函数间接进行。 Protected:受保护类型,子类访问受到限制。
● 数据类型包括基本类型以及用户自定义的扩展类型。
(2) 方法:是类的操作定义,标志类的动态特征,它的基本格式如下:
●访问说明符 数据类型 方法名(数据类型1 变量名1, 数据类型2 变量名2) 其中:
●访问说明符为public、private和protected,其使用方法与成员变量访问说明符的使用方法一致。 ●数据类型:包括基本数据类型和用户自定义的扩展类型。 ●数据类型为参数。 3. 创建类的实例
使用关键字 new进行创建,例如: HelloApplet hp = new HelloApplet(); 3.1.2 类的单继承性
Java编程语言中允许用extends关键字从一个类扩展出一个新类,新类继承超类的成员变量和方法,并可以覆盖方法。
【例3.2】测试类的单继承性,程序输出结果如图3.2所示。源程序代码如下: //程序文件名TestExtend.java
public class TestExtend extends Employee {
public static void main(String[] args) {
System.out.println(\覆盖的方法调用:\王一\ System.out.println(\继承的方法调用:\王一\ System.out.println(\覆盖的方法调用:\王飞\ System.out.println(“继承的方法调用:”+ getSalary2(“王飞\ }
public static String getSalary(String name, int salary) {
String str; if (salary>5000) }
str = \名字: \ Salary: \else str = \名字: \ Salary: 低于5000\return str;
};
class Employee {
public String name;//名字 public int salary;//薪水
public static String getSalary(String name, int salary) { String str;
str = \名字: \ Salary: \ return str; }
public static String getSalary2(String name, int salary) { String str; str = \名字: \ Salary: \ return str; } };
程序中定义了父类Employee类,它有两个方法getSalary和getSalary2,方法体的实现都是一致的,都为输出名字和薪水的值。在TextExtend主类中覆盖了getSalary方法,方法体重新定义为薪水低于5000时并不输出薪水的值而是输出“低于5000”,用于和继承的getSalary2方法进行比较
3.1.3 特殊变量
类中有两个特殊变量super和this。 1. super
类声明中用关键字extends扩展了其超类之后,super用在扩展类中引用其超类中的成员变量。 【例3.3】使用super变量,输出结果如图3.3所示。源程序代码如下: //程序文件名为UseSuper.java public class UseSuper {
public static void main(String[] args) { Manager m = new Manager(); m.name = \王飞\ m.salary = 10000; m.department = \业务部\ System.out.println(m.getSalary()); } }
class Employee {
public String name;//名字 public int salary;//薪水 //方法
public String getSalary() {
String str; str = \名字: \ return str; } }
class Manager extends Employee {
public String department;//部门 //方法
public String getSalary() {
//使用super变量调用超类的方法
return super.getSalary() + \ } }
2. this
this变量指向当前对象或实例。
str = \名字: \上例中的语句可以换成下面的语句。
str = \名字: \
这两者是等同的,因为在Java编程语言中,系统自动将this关键字与当前对象的变量相关联。但有一种情况例外,就是当在某些完全分离的类中调用一个方法并将当前对象的一个引用作为参数传递时。例如: Day d = new Day(this);
3.java 对象
使用对象的步骤: 1.创建对象:(把一个类实例化成对象)
类名 对象名 = new 类名(); Telphone phone = new Telphone(); 2.使用对象: 引用对象的属性:对象名.属性 phone.screen = 5;//给screen属性赋值5 引用对象的方法:对象名.方法名 phone.sendMessage();//调用sendMessage()
1.成员变量: 在类中定义,用来描述对象将要有什么 2.局部变量: 在类的方法中定义,在方法中临时保存数据。 成员变量和局部变量区别 1.作用域不同 2.初始值不同: java会给成员变量一个初始值 java不会给局部变量赋予初始值。
3.在同一个方法中,不允许有同名局部变量;在不同的方法中,可以有同名局部变量。 4.两类变量同名时,局部变量具有更高的优先级
4.成员变量和局部变量
5.构造方法:
1.使用new+构造方法 创建一个新的对象
2.构造方法是定义在java类中的一个用来初始化对象的方法,构造方法与类同名且没有返回值
public 构造方法名(){ //初始化代码 }
没有返回值类型,构造方法名与类名相同,可以指定参数
6.无参构造方法的使用
main():
Telphon phone = new Telphone(); class Telphon:
public Telphone(){ System.out.prinlt(\构造方法执行了\ }
6.带参构造方法的使用
main():
Telphon phone2 = new Telphone(4.0f,2.0f,2.0f); class Telphon:
public Telphone(float newScreen,floatCup,float newMem){ screen = newScreen; cpu = newCpu; mem = newMem; }
创建对象有两种方式: 1.通过无参的构造方法可以创建对象 2.通过有参的构造方法也可以创建对象 3.当没有指定构造方法时,系统会自动添加无参的构造方法 4.当有指定构造方法,无论是有参无参的构造方法,系统都不会自动添加无参的构造方法 5.构造方法的重载:方法名相同,但参数不同的多个方法,调用时会自动根据不同的参数选择相应的方法
6.Java 中的 static 使用之静态变量:
大家都知道,我们可以基于一个类创建多个该类的对象,每个对象都拥有自己的成员,互相独立。然而在某些时候,我们更希望该类所有的对象共享同一个成员。此时就是 static 大显身手的时候了!! Java 中被 static 修饰的成员称为静态成员或类成员。 它属于整个类所有,而不是某个对象所有,即被类的所有对象所共享。 静态成员可以使用类名直接访问,也 …… 此处隐藏:3174字,全部文档内容请下载后查看。喜欢就下载吧 ……
相关推荐:
- [政务民生]2013年公共基础知识热点问题(七)
- [政务民生]检验检测机构资质认定评审准则及释义20
- [政务民生]关于印发重庆市房屋建筑和市政基础设施
- [政务民生]1、隧道洞身开挖支护施工技术交底书
- [政务民生]2015年山东省17地市中考语文试题分类汇
- [政务民生]2-高级会计师资格考试和评审流程图
- [政务民生]2018版中国清分机行业发展分析及前景策
- [政务民生]新课改高中政治探究
- [政务民生]2018-2024年中国新型组合房屋行业投资
- [政务民生]2015年上海市春季高考数学模拟试卷五
- [政务民生]灌砂法及环刀法测压实度(带计算过程)
- [政务民生]运筹学实验2求解非线性规划
- [政务民生]劝学、逍遥游默写(教师卷)
- [政务民生]《运筹学》 - 期末考试 - 试卷A - 答案
- [政务民生]八年级英语下册 Module 6 Hobbies测试
- [政务民生]2019年宪法知识竞赛试题库100题(含答
- [政务民生]自动化英文文献翻译
- [政务民生]公文格式实施细则
- [政务民生]高一地理上册课堂跟踪练习题6
- [政务民生]会计继续教育习题及答案
- 第三章 无约束最优化方法
- 泛读教程第三册答案
- 魏晋南北朝文学
- 幂的运算复习题
- 城市环境问题的成因与治理策略_以社会
- 钢结构行业产业链及竞争分析研究
- 新型热塑性弹性体增韧聚丙烯的研究
- 中国旅游地理B卷试题及答案
- (苏教版)五年级数学上册第三单元测试卷
- 不稳定性心绞痛诊断与治疗
- 俞氏国际后勤职能部门绩效考核办法
- GB7258-2017新标准考试题含答案
- 小学生汉字听写比赛活动方案
- 1.3《平抛运动》学案 教科版必修2
- 2011香港特别行政区公务员考试复习资料
- 考虑水力条件变化的城市给水管网可靠性
- 表面活性剂在油田开发和生产中的应用
- ITT内部培训资料-FI端吸泵的介绍
- 文明守纪,从我做起学生发言稿
- 初中读《聊斋志异》心得体会800字范文