5.内部类和异常类

合集下载

类文件结构的组成

类文件结构的组成

类文件结构的组成类文件是一种用于将相关代码组织在一起的软件开发工具。

它可以包含类、接口、模块、函数等相关元素。

类文件通常用于面向对象的编程语言中,如Java、C++、Python等。

以下是类文件结构的一般组成部分:1. 包声明(Package Declaration):代码所属的包命名空间声明,用于将代码组织成不同的逻辑单元,方便模块化和重用。

2. 导入语句(Import Statements):引用其他类或模块的语句,用于扩展当前文件的功能。

通过导入其他文件,可以使用其定义的类、函数等。

有时,为了简化代码,可以使用通配符导入。

3. 类声明(Class Declaration):类是类文件的核心元素,用于定义一个具有一组属性和方法的对象。

类包含类名、继承关系、成员变量和成员函数等。

4. 属性或成员变量(Properties or Member Variables):类中的属性或成员变量是描述对象状态的变量,通常具有特定的类型和访问修饰符。

它们可以是基本数据类型(如整数、浮点数、布尔值等),也可以是类的对象。

5. 构造函数(Constructor):构造函数是在创建对象时调用的特殊函数,用于初始化类的属性。

构造函数可以具有不同的参数和重载,以满足不同的需求。

6. 成员函数或方法(Methods or Member Functions):成员函数是类内定义的函数,用于执行一些特定的操作。

方法可以访问和操作类的属性,并接受参数和返回值。

方法可以具有不同的访问修饰符,如公有、私有和受保护。

7. 静态成员(Static Members):静态成员是与类关联的成员,不依赖于类的实例。

静态成员可以是静态属性或静态方法。

静态属性在所有类的实例之间共享,而静态方法不需要实例化即可调用。

8. 内部类(Inner Classes):内部类是在类内部定义的类,可用于将类组织成更小的逻辑单元。

它可以用于封装、继承和实现接口等。

面向对象程序设计(java)题库

面向对象程序设计(java)题库

面向对象程序设计(java)题库抽题规范:(1)此题库共75道题,抽8道作为期末考试题。

其中,易8道,较易33道,较难18道,容易16道.(2)按题型,第一大题抽4道,每道10分;第二大题抽2道,每道10分;第三大题抽1道,每道20分后;第四大题扣1道,每道20分后。

(3)按难易程度:易(1道)、较易(4道)、较难(2道)、难(1道)。

一、答疑题(共40道,扣4道,每道10分后,共40分后)1.面向对象有哪三大特征?封装,继承,多态.2.什么是类?(易)类就是定义同一类所有对象的变量和方法的蓝图或原型。

3.什么就是对象?对象是类的实例;对象是通过newclassname产生的,用来调用类的方法;类的构造方法.。

4.类和对象的区别是什么?java中的类就是模板,而对象就是依据模板产生的实体5.详述java的PCB性,如何在java中同时实现PCB封装性是指的把代码封装到大括号中,只能访问自己内部的数据,外边的东西访问不了。

实现为加访问权限。

6.构造方法有哪些特点方法名与类名相同,没返回值,可以存有多个空载。

7.构造方法的促进作用就是什么?(更易)初始化对象,就是你new一个类的时候可以很方便的给你的对象里的属性赋值。

8.this在程序中所代表的意思(易)指当前对象9承继的促进作用就是什么?(极易)同时实现代码F83E43Se。

10.java支持多继承吗?(易)不能。

11.子类可以承继父类的哪些成员?(较难)变量和构造方法。

12.简述构造子类对象时子类和父类构造方法执行顺序(较易)先执行父类再执行子类。

13.什么就是方法的空载,如何挑选被空载的方法?(更易)同一个类中如果同时存在两个以上的方法有同一个名字,在这种情况下,我们说方法被重载了,这个过程被称为重载。

14什么就是方法的改写,如何挑选被改写的方法?(较难)当同名方法同时存在于子类和父类中时,对于子类来说就是将继承父亲的方法重载写过了,实现功能完全和父类无关。

《Java程序设计》教学大纲

《Java程序设计》教学大纲

《Java程序设计》教学大纲1 课程的基本描述课程名称Java语言程序设计Java Program Language课程性质专业基础课适用专业计算机科学与技术、软件工程、网络工程等参考教材Java 程序设计教程(慕课版)(第 2 版).张仁伟.人民邮电出版社。

总学时60学时考核方式期末上机考试(开卷考试)+课程作业,其中期末考试占50%,课程作业占50%本课程讲解Java语言的基本词法、语法、常用基础类和面向对象技术,除此以外,还要讲授程序设计要求、技能、方法和技巧,讲授分析问题和解决问题的方法,讲授算法的基本概念与应用。

Java语言基本内容包括基本数据类型、语句、类与对象、子类与继承、接口与实现、内部类与异常类、常用实用类、输入输出流、Java多线程机制、Java网络编程、泛型与集合框架、组件及事件处理、JDBC数据库操作。

2 教学定位通过本课程的学习,使学生获得JA V A语言程序设计的基本概念、方法和技巧,掌握JA V A 语言的语法,运用JA V A语言编写并调试通过能解决一定规模实际问题的程序,使学生受到程序设计基本功的严格训练,培养学生良好的程序设计风格和严密的逻辑思维能力,提高分析问题解决问题以及实际动手能力,为后续课程的学习以及为今后设计开发各种软件打下良好的基础。

2.1 课程教学目标1.能运用Java语言的基本词法、语法和常用类库等面向对象知识分析计算机复杂工程问题;2.能运用Java面向对象原理,借助相应资源,分析影响问题求解因素,并获得结论;3.能运用Java语言完成计算机系统或软件模块的设计。

2.2 课程的主要特点Java语言程序设计是一门专业基础课程。

课程内容包括语言的基本语法(词法和语法)、面向对象技术和常用基础类。

学生首先要切实掌握语言的基本语法,只有掌握了基本语法才有可能灵活运用语言,是具备程序设计能力的基础;Java语言本身是面向对象的语言,学生应很好地掌握面向对象技术,以便于理解面向对象的设计方法,并能用面向对象技术分析、设计软件系统;通过语言的学习,能够理解算法的概念,并能使用基本的、常用的算法解决信息处理问题;在学习语言的过程中,培养学生的编程能力,以利于学生终身学习。

【黑马】基础笔记

【黑马】基础笔记

面向对象怎么理解面向对象?面向对象是当今主流的一种程序设计理念和设计规范,它取代了早期的"结构化"过程设计开发技术,主张一切皆为对象,程序以人的思维模式去解决问题。

面向对像的程序是由类组成的,每个类包含对用户公开的特定功能部分和隐藏的实现部分。

传统的结构化程序设计通过设计一系列的过程(即算法)来求解问题。

这一些过程一旦被确定,就要开始考考虑存储数据的方式,这就明确的表述了程序员的工作方式。

但面相对像却调换了这个顺序,它不必关心数据对象的具体实现,只要能满足用户的需求即可。

面向对象有三个最基本的特性,即:封装,继承,多态。

--内部类访问特点:1,|| 内部类可以直接访问外部类中的成员。

2,|| 外部类要访问内部类,必须建立内部类的对象。

一把用于类的设计。

分析事物时,发现该事物描述中还有事物,而且这个事物还在访问被描述事物的内容。

这时就是还有的事物定义成内部类来描述。

为什么内部类能直接访问外部类中成员呢?那是因为内部类持有了外部类的引用。

外部类名.this内部类可以存放在局部位置上。

内部类在局部位置上只能访问局部中被final修饰的局部变量。

——>老视频。

【黑马】:内部类的访问规则:①内部类可以直接访问外部类中的成员,包括私有。

为什么内部类能直接访问外部类中成员呢?那是因为内部类持有了外部类的引用格式:外部类名.this②外部类要访问内部类,必须建立内部类对象。

System.out.println(“inner:”+Outer.this.x);小格式:Outer.Inner int = new Outer().new Inner();直接访问内部类中的成员。

访问格式:①当内部类定义在外部类的成员位置上,而且非私有,可以在外部其他类中。

可以直接建立内部对象。

格式:外部类名.内部类名变量名= 外部类对象.内部类对象;Outer.Inner in = new Outer().new Inner();②当内部类在成员位置上,就可以被成员修饰符所修饰。

java开发工程师面试题

java开发工程师面试题

java开发工程师面试题一、基础知识部分1. Java的特点及优势Java是一种面向对象的编程语言,具有跨平台、安全可靠、功能强大等优势。

其特点包括:- 简单易学:Java语法类似于C++,减少了开发者的学习成本。

- 面向对象:Java支持封装、继承和多态等面向对象的特性,使得代码更易于管理和维护。

- 跨平台性:通过Java虚拟机(JVM)实现,一次编写,到处运行,无需为具体平台编写不同的代码。

- 高性能:Java通过即时编译器优化字节码,提供了高效的执行性能。

- 安全性:Java提供了安全管理机制和垃圾回收机制,减少了内存泄漏和代码安全问题。

- 多线程:Java内置多线程支持,方便开发者编写多线程程序。

2. Java中的基本数据类型有哪些?Java的基本数据类型包括:byte、short、int、long、float、double、boolean和char。

3. 什么是Java中的自动装箱和拆箱?自动装箱(Autoboxing)是指将基本数据类型自动转换为对应的封装类型,而拆箱(Unboxing)则是相反的过程,将封装类型自动转换为对应的基本数据类型。

4. 什么是Java中的重载和重写?重载(Overload)是指在同一个类中,可以定义多个方法名相同但参数列表不同的方法。

重载的方法可以有不同的返回类型,但不能仅通过返回类型的不同来区分。

重写(Override)是指子类对父类中已有方法进行重新定义。

重写要求方法名、参数列表和返回类型都相同,可以重新定义方法体,但不能改变方法的基本行为。

5. Java中的final关键字有什么作用?final关键字可以用于修饰类、方法和变量。

- 修饰类:被final修饰的类无法被继承。

- 修饰方法:被final修饰的方法无法在子类中被重写。

- 修饰变量:被final修饰的变量为常量,只能被赋值一次,值不能被修改。

二、面向对象编程部分1. 什么是面向对象编程(OOP)?面向对象编程是一种编程范式,通过将数据和操作数据的方法封装在一起,以对象的方式来组织代码。

javase知识点归纳总结

javase知识点归纳总结

javase知识点归纳总结JavaSE是Java Platform, Standard Edition(Java标准版)的缩写,是Java语言的标准版开发平台,是整个Java EE、Java ME平台的核心。

JavaSE包含了Java语言基础、程序设计、常用API等等,是Java开发的基础。

本文将对JavaSE的知识点进行归纳总结,帮助大家更好地理解JavaSE的核心内容。

JavaSE知识点归纳总结:一、Java语言基础1. 数据类型Java语言的数据类型包括基本数据类型和引用数据类型。

基本数据类型包括整型、浮点型、字符型、布尔型,引用数据类型包括类、接口、数组。

2. 变量与常量Java语言的变量可以分为基本数据类型变量和引用数据类型变量,常量是在程序运行过程中不会发生改变的量。

3. 运算符Java语言的运算符包括算术运算符、关系运算符、逻辑运算符、位运算符、赋值运算符等。

4. 控制流程Java语言的控制流程包括顺序结构、分支结构、循环结构。

5. 方法Java语言的方法是一段有名字的代码块,可以重复使用,可以有参数和返回值。

二、面向对象编程1. 类与对象Java语言是一种面向对象的编程语言,类是对象的设计图,对象是类的一个实例。

2. 继承与多态继承是子类继承父类的属性和方法,多态是同一个方法针对不同的对象有不同的表现形式。

3. 封装与继承封装是将数据和方法进行了封装,隐藏了内部的实现细节,继承是子类继承父类的属性和方法。

4. 接口与抽象类接口是一种抽象的数据类型,抽象类是抽象了一些共同的特征和行为的类。

5. 内部类内部类是定义在另一个类中的类,可以访问外部类的成员。

三、异常处理1. 异常的分类Java语言的异常包括编译时异常和运行时异常,编译时异常需要捕获或声明,运行时异常可以不捕获也不声明。

2. 异常的处理Java语言的异常处理包括try-catch语句块、throw语句和throws关键字。

java美团面试题目及答案

java美团面试题目及答案Java是一种广泛应用于软件开发的编程语言,而美团则是中国最大的在线本地生活服务平台之一。

随着技术的进步和市场的竞争,很多软件工程师都对美团的技术岗位感兴趣。

为了帮助准备面试的候选人更好地准备,本文将介绍一些经典的Java美团面试题目及其答案。

1. 什么是Java的多态性?多态性的实现方式有哪些?Java的多态性是指在面向对象编程中,同一个方法名可以在不同的类中具有不同的实现方法,即一个方法在不同的对象上具有不同的行为。

实现多态性的方式包括方法重载和方法重写。

- 方法重载:在一个类中,如果有多个方法具有相同的方法名但参数列表不同,就称为方法的重载。

Java根据方法的参数进行选择调用,根据参数不同自动匹配不同的方法。

- 方法重写:在子类中,如果定义了一个与父类中同名、同参数列表、同返回类型的方法,就称为方法的重写(Override)。

通过重写,子类可以修改或扩展父类的方法。

2. 请简要解释Java的反射机制,并说明其适用场景。

Java的反射机制是指在运行时动态获取类的相关信息,并可以在运行时操作类或对象的属性、方法等。

通过Java的反射机制,可以在编译时无需知道具体类的情况下,对类进行操作。

反射机制的主要适用场景包括动态代理、框架的扩展性、动态加载类和调试等。

例如,当需要在运行时动态地创建一个对象或代理对象时,可以使用反射机制。

另外,很多框架(如Spring)都利用了反射机制来实现灵活的功能扩展。

3. 什么是Java中的内部类?内部类的作用是什么?内部类是声明在另一个类或代码块中的类。

与普通的类不同,内部类可以直接访问外部类的私有字段和方法,而无需通过继承或接口实现。

内部类的作用包括:- 封装:内部类可以隐藏实现细节,将相关的类进行组织,提高代码的可读性和可维护性。

- 实现多重继承:Java中不支持类的多重继承,但通过内部类可以间接实现类的多重继承。

- 回调函数:内部类可以用作回调函数的实现,实现异步操作或特定事件的响应。

实验题目

实验一 Java语言概述【实验目的】1.掌握开发Java应用程序的三个步骤:编写源文件、编译源文件和运行应用程序。

2.熟悉Java应用程序的基本结构,并能联合编译应用程序所需要的类。

文件保存要求:在D:盘新建文件夹“学号”,在“D:\ 学号”下新建文件夹“timu1”。

题目1的文件保存在“timu1”中,以下依次类推。

【题目1】1、实验要求:编写一个简单的Java应用程序,该程序在命令行窗口输出两行文字:“你好,很高兴学习Java”和“We are students”。

2、程序模板:请按模板要求,将【代码】替换为Java程序代码。

3、实验后的练习a.编译器怎样提示丢失大括号的错误。

b.编译器怎样提示语句丢失分号的错误。

c.编译器怎样提示将System写成system这一错误。

d.编译器怎样提示将String写成string这一错误。

【题目2】1、实验要求:编写3个源文件:、、,每个源文件只有一个类。

含有应用程序的主类(含有main方法),并使用了Teacher和Student类。

将3个源文件保存到同一目录,D:\timu2,然后编译。

2、程序模板:请按模板要求,将【代码】替换为Java程序代码。

3、实验后的练习a.将编译通过后,不断地修改源文件中的【代码2】。

比如,在命令行窗口输出“我是语文老师”或“我是数学老师”。

要求每次修改源文件后,单独编译,然后直接运行应用程序(不要再编译)。

b.如果需要编译某个目录下的全部Java源文件,如D:\1001目录,可以使用如下命令:D:\1001>javac *.java请练习上述命令。

【题目3】1、实验要求:课本第15页习题2、实验后的练习习题8.(4)实验四类与对象【实验目的】1.掌握使用类来封装对象的属性和行为。

2.掌握对象的组合以及参数传递。

3.掌握类变量与实例变量,以及类方法与实例方法的区别。

文件保存要求:在D:盘新建文件夹“shiyan04”,在“D:\ 20120shiyan04”下新建文件夹“timu1”。

昆工 java期末考试题库

1.Java是一种严格的面向对象语言,编写的所有代码都限定在类内完成。

2.Java中引入包的概念是为了减少命名冲突,扩大名字空间。

3.Java既是开发环境,又是应用环境,它代表了一种新的计算模式。

4.Java中的数组是用来表示一组同类型数据的数据结构,且数组是定长的,初始化以后,数组的大小不会再动态变化。

5.Java中的字符串是内存中连续排列的一个或多个字符。

6.Java的封装性体现在将方法和数据封装在一个类中。

7.Java中的每种事件类都有一个对应的接口,接口中申明了一个或多个抽象的事件处理方法,凡是需要接收并处理事件类对象的类,都需要实现相应的接口。

9.在Java中,使用构造函数是生成对象的唯一方法。

10.在Java中,this用于指代本类,super用于指代其父类。

11.在Java中,n维数组只是n-1维数组的数组。

12.在Java中,复合语句是一对花括号“{”和“}”括起来的语句组,也称为块。

从这种意义上说,类定义和方法定义都可以看作一个块。

13.在Java中,环境变量classpath将指示javac编译器如何查找所需要的对象。

14.如果Java文件中包含一个公有类,则该文件的文件名必须与该公有类一致。

15.语句是Java最小的执行单元,各语句间以分号分隔。

16.一个Java源文件可包括一个package语句和任意多个import语句,但package语句必须在前面。

17.Object是Java程序中所有类的直接和间接父类,也是类库中所有类的父类,处在类层次的最高点。

18.JVM的代码格式为压缩的字节码,因而效率较高。

19.OOP技术把问题看成是相互作用的事物的集合,用属性来描述事物,而把对它的操作定义为方法。

20.在访问权限修饰符中,protected修饰符和无修饰符时的根本区别仅在于不同包的子类是否可以对其访问。

21.static成员与类相对应,不需要创建对象就可使用。

22.在while循环中,循环体有可能一次也不执行。

JAVA实验报告

学生实验报告课程名称:面向对象程序语言(Java)年级:专业:学号:姓名:指导教师:实验地点:学年至学年度第学期1.目录实验一初识Java——“一个简单的应用程序”实验二基本数据类型与数组——“输出希腊字母表”实验三分支与循环语句——“猜数字游戏”实验四类与对象——“机动车”实验五类与对象——“家中的电视”实验六类与对象——“共饮同井水”实验七类与对象——“求方程的根”实验八子类与继承——“中国人、北京人和美国人”实验九子类与继承——“银行计算利息”实验十子类与继承——“公司支出的总薪水”实验十一接口与实现——“评价成绩”实验十二内部类与异常类——“检查危险品”实验十三常用实用类——“检索简历”实验十四组件及时间处理——“计算三角形的面积”实验十五实验十六实验(一)初识Java——“一个简单的应用程序”实验时间:2017年02月21日实验目的本实验的目的是让学生掌握开发Java应用程序的三个步骤:编写源文件、编译源文件和运行应用程序实验要求编写一个简单的Java应用程序,该程序在命令行窗口输出两行文字:“你好,欢迎学习Java”和“We are students”。

实验内容public class Hello {public static void main (String args[ ]) {System.out.println("你好,很高兴学习Java"); //命令行窗口输出"你好,很高兴学习Java"A a=new A();a.fA();}}class A {void fA() {System.out.println("We are students"); //命令行窗口输出"We are students"}}实验结果分析通过本次实验,在老师的指导下我学会了基本的JAVA编译原理,能够自行改变环境变量,能够成功编译出一个简单的应用程序,而且通过实验后的练习知道了一些基础的错误在JAVA中出现时编译器的提示信息是怎样的。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

String s1=“Hello World!”; String s2=“Hello World!”; 此时:s1==s2
0xAb28 0xAb28
Hello World!
s2
思考:如果按照下式定义,s1 和 s2还相等吗? String s1=new String(“Hello World!”); String s2=new String(“Hello World!”);
Java技术及其应用

class 动物类{} class 骡子类{ class 马类 extends 动物类{ void 奔跑(){System.out.println("我能奔跑");} } class 驴类 extends 动物类{ void 拉磨(){System.out.println("我能拉磨");} } 马类 马; 1、接口可以实现简单的多重继承功能 驴类 驴; 骡子类(){ 2、一个外嵌类,拥有多个内部类, 马=new 马类(); 驴=new 驴类(); 可理解为多重继承的一种变通形式 } 注意:原理上没有关系 void 奔跑(){ 马.奔跑(); } void 拉磨(){ 驴.拉磨(); } } class Example{ public static void main(String args[]) { 骡子类 骡子=new 骡子类(); 骡子.奔跑(); Java技术及其应用 骡子.拉磨();
小结
内部类可直接调用外嵌类中的属性和方法; 外嵌类必须通过内部类的对象调用其属性和方法。
Java技术及其应用
字符串处理中几个问题
Java技术及其应用
关于字符串处理
Java提供String类,专门负责处理跟字符串相关 的操作。 String类在ng包内,是默认导入的。
Java技术及其应用
String类提供了重载的构造方法来生成字符串。 1、String()缺省构造方法,创建一个空串。 String s=new String();
2、String(String value)利用已有的字符串创建一个String 对象,该对象的内容与给出的字符串常量一致。 String s=new String(“hello”);
思考1
class 团委老师类{ //外嵌类 int 身高; int 体重; class 计科团委类{ //内部类 String 办公室地址; void 盖章() {System.out.println("盖团委章");} } 计科团委类 计科团委;//声明内部类变量 团委老师类(){ //外部类构造方法 一般情况下,在外嵌类的 计科团委=new 计科团委类(); 构造函数中创建内嵌类对象, 计科团委.办公室地址="理工D305"; 并对其属性进行赋值 }} 思考2:如何在创建外嵌类对象时, class Example{ 直接对内部类的属性赋值? public static void main(String args[]) { 团委老师类 计科李书记= new 团委老师类(); 计科李书记.计科团委.盖章(); Java技术及其应用 System.out.println(计科李书记.计科团委.办公室地址 );
例题
class 团委老师类{ //外嵌类 int 身高; int 体重; class 计科团委类{ //内部类 String 办公室地址="理工D305";; void 盖章() {System.out.println("盖团委章");} } 思考1: 计科团委类 计科团委=new 计科团委类(); 创建内部类的对象 } 能否有其它方式? class Example{ public static void main(String args[]) { 团委老师类 计科李书记= new 团委老师类(); 计科李书记.计科团委.盖章(); System.out.println(计科李书记.计科团委.办公室地址); }} 只有团委老师类,才能查询团委的办公室地址,调用盖章方法 Java技术及其应用
Java技术及其应用
内部类
class B{ } class A{ B b;//若类B只在该处使用 } 可以将类B定义为A的内部类。 class A{ //外嵌类 int n; int f(); B b;//外嵌类通过此成员变量调用内部类 class B{ //内部类 } }
Java技术及其应用
我们已经知道:类可以有两种重要的成员:成员变 量和方法,类还可以有一种成员:内部类。 Java支持在一个类中声明另一个类,这样的类称作 内部类,而包含内部类的类成为内部类的外嵌类。
关于多重继承 动物类
思考: 如何实现该关系?
马类
优点:继承二者优点 缺点?
驴类
骡子类
class 动物类{} class 骡子类{ class 马类 extends 动物类{ void 奔跑(){System.out.println("我能奔跑");} } class 驴类 extends 动物类{ void 拉磨(){System.out.println("我能拉磨");} } 马类 马=new 马类(); 驴类 驴=new 驴类(); 思考:如何修改? } class Example{ public static void main(String args[]) { 骡子类 骡子=new 骡子类(); 骡子.马.奔跑(); 骡子.驴.拉磨(); }}
内部类同类中声明的方法或成员变量一样,一个类 把内部类看作是自己的成员。 外嵌类的成员变量在内部类中仍然有效, 内部类中的方法也可以调用外嵌类中的方法。 内部类的类体中不可以声明类变量和类方法。 外嵌类可以用内部类声明对象,作为外嵌类的成员
class boy{ //男孩类,外嵌类 int boysMoney=100;//男孩的钱 void boyWashClothes(){System.out.println("男孩洗衣服");} class girl{ //女孩类,内部类 int girlsMoney=100;//女孩的钱 class teacher void girlWashClothes(){ boyWashClothes();//内部类直接调用外嵌类的方法 } void girlShopping(){ boysMoney-=50;//内部类可直接调用外嵌类的属性 System.out.println("男孩剩余"+boysMoney+";女孩剩余"+girlsMoney); }} girl girlFriend=new girl(); void boyShopping(){ girlFriend.girlShopping(); //外嵌类通过内部类的对象调用其方法 }} class Example{ public static void main(String args[]) { boy 明义=new boy(); 明义.boyWashClothes(); 明义.girlFriend.girlWashClothes(); 明义.boyShopping(); 明义.girlFriend.girlShopping(); } }
思考4
class 团委老师类{ //外嵌类 int 身高; int 体重; class 计科团委类{ //内部类 String 办公室地址; void 盖章() {System.out.println("盖团委章");} } 计科团委类 计科团委;//声明内部类变量 团委老师类(String addr){ //外部类构造方法 计科团委=new 计科团委类(); 仅仅是通过内部类的对象, 计科团委.办公室地址=addr; 调用其属性和方法 } String 获取团委地址() { return 计科团委.办公室地址;} void 盖章() { 计科团委.盖章(); } } 思考5:和继承有何区别和联系 class Example{ public static void main(String args[]) { 团委老师类 计科李书记= new 团委老师类("理工D305"); 计科李书记.盖章(); System.out.println(计科李书记.获取团委地址()); Java技术及其应用 }}
String s=“123”; String s=new String(“123”);
Java技术及其应用
问题1:
String s1 =new String(“Hello World!”); 也可以 String s1 =“Hello World!”;//用双引号括住的一串字符 Java编译器自动为每个字符串常量生成一个String类的实例 s1
思考3
class 团委老师类{ //外嵌类 思考4:如果把外嵌类的方法: int 身高; int 体重; class 计科团委类{ //内部类 盖团委章(),改成盖章(),行吗? String 办公室地址; void 盖章() {System.out.println("盖团委章");} } 计科团委类 计科团委;//声明内部类变量 团委老师类(String addr){ //外部类构造方法 计科团委=new 计科团委类(); 计科团委.办公室地址=addr; } String 获取团委地址() { return 计科团委.办公室地址;} void 盖团委章() { 计科团委.盖章(); } 一般情况下,不要直接操作 } 内部类的属性和方法 class Example{ public static void main(String args[]) { 团委老师类 计科李书记= new 团委老师类("理工D305"); 计科李书记.盖团委章(); System.out.println(计科李书记.获取团委地址()); Java技术及其应用 }}
相关文档
最新文档