-
2021-03-15 21:16:49
java类里面还可以定义一个类,即内部类。
java内部类分为: 成员内部类、静态嵌套类、方法内部类、匿名内部类 。
内部类的共性
(1)、内部类仍然是一个独立的类,在编译之后内部类会被编译成独立的.class文件,但是前面冠以外部类的类名和$符号 。
(2)、内部类不能用普通的方式访问。内部类是外部类的一个成员,因此内部类可以自由地访问外部类的成员变量,无论是否是private的 。
(3)、内部类声明成静态的,就不能随便的访问外部类的成员变量了,此时内部类只能访问外部类的静态成员变量 。
如果成员变量是静态的,那么直接在A类中通过“B.变量名称”的形式即可。
如果成员变量是动态的,需要在B类中创建变量的set和get方法,之后在A类中:
B b =new B();进行B类实例化
b.setName("zhangsan");//赋值
b.getName();获取到成员变量值。
当然可以,写代码不能随心所欲,但也不能啥都不敢,多试试!
java里在一个类中定义另一个类,这个类被成为内部类。
java内部类分为: 成员内部类、静态嵌套类、方法内部类、匿名内部类 。
顾名思义,很好理解的
Java一个类里面允许有多个内部类,这是为了提高聚合性。
在一个很大的项目中,由于多个开发人员,创建的类很多,导致后期管理或者使用上带来很大的麻烦,为了提供程序的可维护性,有些私有的类就建议写在一个类里面,提高代码可读性。
用union联合查询
返回的是一个结果集
填装的时候根据关系填装
java程序中能否在内部类当中再定义一个内部类? -
: 可以调用
java里可不可以在一个类中定义另一个类
: 在一个类里面定义另外一个类是可以的,虽然一般不是很推荐这个用法,这个里面定义的类,就只是给外面的类使用的,不能给其他的类引用
java一个类里面可以定义多个类吗 -
: 当然可以,这也是封装的一种形式,例如:public class User{ class Son { } class Daughter { } }
Java中重写的方法参数可以重新指定? -
: 我想你还没有分清Java中重载与重写的区别:首先我们来讲讲:重载(Overloading) (1) 方法重载是让类以统一的方式处理不同类型数据的一种手段.多个同名函数同时存在e69da5e6ba90e799bee5baa6e997aee7ad9431333337623436,具...
java中的数组能够在定以后改变长度吗 -
: java中数组的长度不可以改变.java中的数组的定义就是相同类型,固定长度的一组数据,一旦被初始化,长度不可更改.如果对需要用的数组的长度不确定,有两种解决办法:第一种是在数组初始化的时候长度申请的足够大,这样做会造成内存空间的浪费,一般不推荐使用.第二种是用java中提供的集合的方式存储数据,如List,Set和Map类型的对象存储数据,一方面这些类型的对象的长度都是动态增长的,另一方面这些类中提供了很多便于操作数据的方法,因此在对所需存储数据的多少不确定的时候,第二种方法比第一种方法更优秀.
在Java程序中,通过类的定义只能实现( )重继承,但通 -
: 在Java程序中,通过类的定义只能实现( 单 )重继承,但通过接口的定义可以实现( 多 )重继承关系.在Java程序中,通过类的定义只能实现( )重继承,但通
为什么Java中类的成员变量不能被重写
: 变量和方法都是能够被重写的,看你实例化的时候调用的是哪个构造方法.要想重写,那么类型和变量名都需要相同才能被重写
java中为什么两个类 一个类中定义了变量,在另一个类中就可以调用这个类中的变量了
: 因为你类定义的类型是Public或者Static.类修饰符: public 可见于所有类,包括其他包中的类 static 仅能在本包中使用 private 技能使用于本类,子类及其他类无法使用
java怎么在经过指定时间再执行方法? -
: Java中的Timer类可以实现经过指定时间再执行方法,Timer方法如下:schedule(TimerTask task, Date time) // 安排在指定的时间执行指定的任务.schedule(TimerTask task, long delay)// 安排在指定延迟后执行指定的任务.Java是一种可以撰写跨平台应用程序的面向对象的程序设计语言.Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于PC、数据中心、游戏控制台、科学超级计算机、移动电话和互联网,同时拥有全球最大的开发者专业社群.
JAVA能调用别的类中的成员变量吗? -
: 都可以调用,公有变量直接可以调用,私有变量需要实例化后再调用
更多相关内容 -
Java类的定义格式:Java如何定义一个类
2021-02-12 09:23:05为了在程序中创建对象,首先需要定义一个类。类是对象的抽象,它用于描述一组对象的共同特征和行为,例如人都有姓名、年龄、性别等特征,还有学习、工作、购物等行为。以面向对象的编程思想,就可以将某一类中共同的...在面向对象的思想中,最核心的就是对象。为了在程序中创建对象,首先需要定义一个类。类是对象的抽象,它用于描述一组对象的共同特征和行为,例如人都有姓名、年龄、性别等特征,还有学习、工作、购物等行为。以面向对象的编程思想,就可以将某一类中共同的特征和行为封装起来,把共同特征作为类的属性(也叫成员变量),把共同行为作为类的方法(也叫成员方法)。本节将对Java中类的定义格式、类的成员变量和成员方法进行详细讲解。
1.类的定义格式
Java中的类是通过class关键字来定义的,其语法格式如下:
[修饰符] class 类名 [extends 父类名] [implements 接口名]{
// 类体,包括类的成员变量和成员方法
}
在上述语法格式中,class前面的修饰符可以是public,也可以不写(默认);class之后是定义的类名,类名首字母要大写,并且其命名要符合标识符的命名规则;extends和implements是可选项,均为Java中的关键字,其中extends用于说明所定义的类继承于哪个父类,implements关键字用于说明当前类实现了哪些接口(这两个关键字将在下一章详细讲解,这里作为了解即可)。后面大括号{}中的内容是类体,即需要在类中编写的内容,它主要包括类的成员变量和成员方法。
2.声明(定义)成员变量
类的成员变量也被称作类的属性,它主要用于描述对象的特征。例如,一个人的基本属性特征有姓名、年龄、职业、住址等信息,在类中要使用姓名、年龄等信息时,就需要先将它们声明(定义)为成员变量。
声明(定义)成员变量的语法格式如下:
声明(定义)成员变量的语法格式如下:
[修饰符] 数据类型 变量名 [ = 值];
在上述语法格式中,修饰符为可选项,用于指定变量的访问权限,其值可以是public、private等;数据类型可以为Java中的任意类型;变量名是变量的名称,必须符合标识符的命名规则,它可以赋予初始值,也可以不赋值。通常情况下,将未赋值(没有被初始化)的变量称之为声明变量,而赋值(初始化)的变量称之为定义变量。
例如,姓名和年龄属性在类中的声明和定义方式如下:
private String name; // 声明一个String类型的name;
private int age = 20; // 定义一个int类型的age,并赋值为20;
3.声明(定义)成员方法
成员方法也被称为方法,类似于C语言中的函数,它主要用于描述对象的行为。一个人的基本行为特征有吃饭、睡觉、运动等,这些行为在Java类中,就可以定义成方法。
定义一个方法的语法格式如下:
[修饰符] [返回值类型] 方法名([参数类型 参数名1,参数类型 参数名2,...]){
//方法体
...
return 返回值; //当方法的返回值类型为void时,return及其返回值可以省略
}
上面语法格式中,[]中的内容表示可选,各部分的具体说明如下:
● 修饰符:方法的修饰符比较多,有对访问权限进行限定的(如public、protected、private),有静态修饰符static,还有最终修饰符final等,这些修饰符在后面的学习过程中会逐步讲解。
● 返回值类型:用于限定方法返回值的数据类型,如果不需要返回值,可以使用void关键字。
● 参数类型:用于限定调用方法时传入参数的数据类型。
● 参数名:是一个变量,用于接收调用方法时传入的数据。
● return关键字:用于结束方法以及返回方法指定类型的值,当方法的返回值类型为void时,return及其返回值可以省略。
● 返回值:被return语句返回的值,该值会返回给调用者。
在上述语法中,{}之前的内容被称之为方法签名(或方法头),而{}中的执行语句被称为方法体。需要注意的是,方法签名中的“[参数类型 参数名1,参数类型 参数名2,...]”被称作参数列表,它用于描述方法在被调用时需要接收的参数,如果方法不需要接收任何参数,则参数列表为空,即()内不写任何内容。关于上述语法结构中的修饰符内容,将在后面进行逐一的讲解,这里读者只需了解如何定义类、成员变量和成员方法即可。
了解了类及其成员的定义方式后,接下来通过一个具体的案例来演示一下类的定义,如文件1所示。
文件1 Person.java
public class Person {
int age; // 声明int类型的变量age
// 定义 speak() 方法
void speak() {
System.out.println("我今年" + age + "岁了!");
}
}
文件1中定义了一个Person类,并在类中定义了类的成员变量和成员方法。其中,Person是类名,age是类的成员变量,speak()是类的成员方法。在成员方法speak()中可以直接访问成员变量age。
脚下留心
在Java中,定义在类中的变量被称为成员变量,定义在方法中的变量被称为局部变量。如果在某一个方法中定义的局部变量与成员变量同名,这种情况是允许的,此时方法中通过变量名访问到的是局部变量,而并非成员变量,请阅读下面的示例代码:
public class Person {
int age = 10; // 类中定义的变量被称作成员变量
void speak() {
int age = 30; // 方法内部定义的变量被称作局部变量
System.out.println("我今年" + age + "岁了!");
}
}
上面的代码中,speak()方法中的打印语句所访问的变量age,就是局部变量,也就是说,当有另外一个程序来调用speak()方法时,输出的值为30,而不是10。
猜你喜欢:
-
定义一个类
2018-02-28 21:14:49如何定义一个类: 1.类的重要性:所有java程序都是以类class为组织...定义类名:publi class 类名{内容},class是定义类的关键字。 b.编写类的属性:在{}内定义不同的属性类型,可以是一种可以是N种。 c.编写类的方...如何定义一个类: 1.类的重要性:所有java程序都是以类class为组织单元的,是基本元素。 2类是模子,确定对象将会拥有什么样的特征(属性)和行为(方法)。先有类才能够描述具体对象。 3类的组成:属性和方法 4定义一个类的顺序: a.定义类名:publi class 类名{内容},class是定义类的关键字。 b.编写类的属性:在{}内定义不同的属性类型,可以是一种可以是N种。 c.编写类的方法:可以多种行为,可以一种。 1.对象的概念:对特定一个存在事物 2.什么是面向对象:以自我为中心对待一个特定事物存在,需要自己描述出来的符合的条件 3.类:是对象的一个属性一个特征,是你描述的条件,条件符合的多个对象可以归纳为一个类,也可以说这个对象含有这个类。 4什么是对象的属性:对象有的各种特征,他具有什么就是对象的属性。 5什么是对象的方法:对象能干什么 6类与对象的关系/区别:类是抽象的概念是一个模板,是条件信息。对象是一个具体的东西,是一个客观存在。好比是类是能打电话,能发短信的功能条件。而对象就是一部手机。
-
Java|如何用Java定义一个类
2020-05-24 11:52:32类是一个模板,它描述一类对象的行为和状态。类的定义包括“成员变量”的定义和“方法”的定义,其中“成员变量”用于描述一类对象共同的数据结构。在Java语言中,类的成员变量的定义可以使用如下语法: class 类名...类的定义
类是一种引用数据类型。类为对象的模板,简单的说就是分类。类是一个模板,它描述一类对象的行为和状态。类的定义包括“成员变量”的定义和“方法”的定义,其中“成员变量”用于描述一类对象共同的数据结构。在Java语言中,类的成员变量的定义可以使用如下语法:
class 类名 {成员变量类型变量名称;………}
类是用class关键字来定义的一种抽象数据类型,类不但定义了抽象数据类型的组成(成员变量),同时还定义了对该类型可以实施的操作(方法),类名的首字母必须大写。
注释:1.java 会给成员变量一个初始值,但是不会给局部变量初始值,所以局部变量应赋初始值。2.局部变量与成员变量名称相同时,有限选取局部变量的值。
定义的思路
每个人的学习方法不同对于定义一个类的思路也可能会有所不同。一般来说我会将定义一个类分为两部分,即属性和方法(也可以说是成员变量和成员方法)。
详细的说就是:
1.先定义一个类;
2.定义类的属性(成员变量);
3.定义类的方法;
4.定义类的局部变量。
例题解释
例题1:设计一个圆形类,可以返回圆的面积与周长。
思路:题目很简单,但是我们还是可以按照上面确定我们需要的基本条件。(1)确定成员变量为圆的半径。(2)确定成员方法为圆的周长和面积。确定了大概的
package day20190912; import java.util.Scanner; public class Circle { public static void main(String[] args) { System.out.println("请输入圆的半径:"); Scanner input=new Scanner(System.in); float r=input.nextFloat() ; Circular c=new Circular(); c.area(r); c.perimeter(r) ; } } class Circular{ //1.成员变量:半径 private float r; //2.成员方法:计算圆的周长和面积 public void perimeter(float r){ //周长等于3.14*2*r System.out.println("周长为"+(3.14*2*r)); } public void area(float r){ //面积等于3.14*r*r System.out.println("面积为"+(3.14*r*r)); } }
俗话说“黑猫白猫,抓到老鼠就是好猫”。定义类的方法有很多,每个人的方法并不一定要想同,能解决问题的办法就是好方法。
-
Java如何定义一个类
2019-09-20 00:00:00欢迎点击「算法与编程之美」↑关注我们!本文首发于微信公众号:"算法与编程之美",欢迎关注,及时了解更多此系列文章。类的定义类是一种引用数据类型。类为对象的模板,简单的说就... -
python 定义一个类
2018-10-14 16:44:37#以下定义了一个类,类名为Person_info,里面有两个参数,分别是name和age class Person_info: def __init__(self,name,age): self.name=name self.age=age #以下是使用说明 temp=Person_info(kk,5); print... -
定义一个类,描述一个矩形,包含有长、宽两种属性,和计算面积方法。
2021-06-07 20:29:08(1)定义一个类,描述一个矩形,包含有长、宽两种属性,和计算面积方法。 (2)编写一个类,继承自矩形类,同时该类描述长方体,具有长、宽、高属性, 和计算体积的方法。 (3)编写一个测试类,对以上两个类进行... -
(1)定义一个Circle类,包含一个double型的radius属性代表圆的半径,一个 findArea()方法返回圆的面积。...
2021-01-25 22:28:46(1)定义一个Circle类,包含一个double型的radius属性代表圆的半径,一个 findArea()方法返回圆的面积。 (2)定义一个类PassObject,在类中定义一个方法printAreas(),该方法的定义 如下:public void ... -
按要求编写一个Java应用程序:(1)定义一个类,描述一个矩形,包含有长、宽两种属性,和计算面积方法。...
2021-09-22 17:33:29(1)定义一个类,描述一个矩形,包含有长、宽两种属性,和计算面积方法。 public class Jvcs { private int Long; //长 private int wide; //宽 public Jvcs() { //无参 super(); } public Jvcs(int aLong,... -
2. 编写程序,要求如下: (1)定义一个类Animal,包含init方法和run方法 (2)Animal属性包括name和age ...
2020-06-14 21:30:58class Animal: def __init__(self, name,age): self.name = name self.age = age def run(self): print(self.age + "岁的" + self.name.title() + "跑的快.") class Dog(Animal): def __init__(self, ... -
PTA——JAVA 定义类与创建对(定义一个类Person,定义name和age属性,定义有参的构造方法对name和age进行初始...
2020-03-14 18:34:26定义一个类Person,定义name和age属性,定义有参的构造方法对name和age进行初始化。在测试类中创建该类的2个对象,姓名、年龄分别为lili、19和lucy、20,在屏幕打印出2个对象的姓名和年龄。 输入格式: 本题目无输入 ... -
python中定义一个类时,类中各个方法调用参数的问题
2019-06-28 11:28:50在定义一个类时,会有很多内置方法。此时关于参数的调用,本菜鸟感觉比较模糊。现在此总结一下。 class Person(object): #此处不能填写参数,因为这个规定的是从哪里继承,是什么类型#的子类 def init(self, first_... -
java中定义一个类可以同时继承两个类
2016-03-23 10:10:59java中定义一个类可以同时继承两个类 分享| 2013-09-18 17:12yfjmhe | 浏览 19117 次 继承 这句话对还是错?为什么? 专业回答 DM19890110 2013-09-18 17:58 这句话要看怎么理解... -
Java定义一个教师类Teacher
2021-02-26 14:05:25class Teacher{private String name;private String num;private String prof;private String dept;private String course;private int hours;public Teacher(String name,String num,String prof){this.name=name;... -
定义一个类Demo,其中定义一个求两个数据和的方法,定义一个测试了Test,进行测试。
2016-07-22 20:02:28定义一个类Demo,其中定义一个求两个数据和的方法, 定义一个测试了Test,进行测试。 变量什么时候定义为成员变量: 如果这个变量是用来描述这个类的信息的,那么,该变量就应该定义为成员变量。 变量到底... -
C++可以在类中定义一个类吗?
2015-08-05 10:18:05比如像下面这样:  -
java基础之定义一个类
2018-09-27 14:55:36先定义一个类 *2.定义类的属性(成员变量) *3.定义类的方法 *4.定义类的局部变量 **/ public class test{ int overallVar; public void mothodTest(){ int partVar=0; ............ } } 注释: 1.... -
定义一个类,对A类的成员变量v进行猜。如果大了则提示大了,小了则提示小了。等于则提示猜测成功。
2018-04-12 11:54:16import java.util.Scanner;public class Test1 { /** * 类的成员变量:... * 定义一个类,对A类的成员变量v进行猜。 * 如果大了则提示大了,小了则提示小了。等于则提示猜测成功。 * @param args */ public st... -
编程练习:定义一个表示时间的类Time
2019-09-23 20:16:10定义一个表示时间的类Time ,它提供下面操作: a)Time(hours,minutes,seconds)创建一个对象; b) t.hours(),t.minutes(),t.seconds()分别 返回时间对象t的小时,分钟和秒值; c)为Time对象定义加法和减法操作 d)定义... -
类的定义
2021-03-05 15:06:08将抽象出的数据成员,行为成员想组合,将他们视为一个整体——类 使用者不需要了解具体的实现细节只需要通过接口使用类的成员即可 继承与派生: 保持原有类特性的基础上,进行更具体的说明 类(class)是用户... -
Java在一个类文件中是否可以定义多个类?
2019-07-12 17:12:20今天在跟廖雪峰大大学习Java的过程中无意间发现一个小问题,就是在一个类文件中能否创建多个类的事情,我...我之前明明记得在一个类文件下是可以定义多个类的啊,怎么到这不行了??于是我赶紧翻回之前写的代码: p... -
编写程序Account.java,定义一个类Account,表示“银行账户”,
2020-07-16 13:20:19编写程序Account.java,定义一个类Account,表示“银行账户”,完成以下要求: (1)定义以下实例成员变量: 账号:String account 储户姓名:String name 存款余额:double balance (2)定义以下静态成员变量: ... -
28.按要求编写一个Java应用程序: (1)定义一个类,描述一个矩形,包含有长、宽两种属性,和计算面积方法...
2016-09-22 17:40:00//矩形父类 package d922A; public class Rect { private double l,w; Rect(double c,double k) { l=c; w=k; } public double s() ...///立方体类 package d922A; public class Rect1 extends Rect { private... -
按要求编写一个Java应用程序: (1)定义一个类,描述一个矩形,包含有长、宽两种属性,和计算面积方法。...
2016-09-22 19:23:00定义新的成员方法求体积 public double tiji() { return this .getChang()* this .getHeight()* this .getWidth(); } } package jvxing; public class Text_jvxing { public static ... -
实验5.5 定义一个Employee类
2020-06-01 19:28:50定义一个Employee类,其中包括姓名、街道地址、城市和邮编等属性,以及change_name()和display()等函数。display()显示姓名、街道地址、城市和邮编等属性,change_name()改变对象的姓名属性,实现并测试这个类。 AC... -
定义一个圆形类Circle
2020-03-27 14:46:10要求用定义一个圆形类Circle,其中包含如下成员: 1 . 1个私有数据成员(半径)。 2 . 3个公有函数成员(设置半径、计算面积、计算周长)。 3 . 3个构造函数(不带参数的构造函数、带参数的构造函数和拷贝构造函数)... -
使用面向对象思想,定义一个学生类Student,该类包括以下字段:姓名name,学号stuNo和成绩score。
2020-11-24 10:18:01展开全部你好,纯手打,建议看一下是62616964757a686964616fe4b893e5b19e31333365663530否符合你的要求。public class Student {private String name;private Integer stuNo;private Double score;... -
java实验:定义一个People类,为People类派生出一个子类Employee类
2020-04-11 20:50:39//4、定义一个People类,它包含属性有姓名name和性别sex, //为People类派生出一个子类Employee类,为其增加两个属性年龄age和工资等级grade,工资等级分A、B、C三个等级, //在子类中增加用于打印出员工的姓名、... -
Java学习之定义一个Circle类并测试所有方法
2021-04-09 08:43:18定义一个名为Circle的类表示圆,其中含有 double型的成员变量centerX、centerY,表示圆心坐杯, radius表示圆的半径。定义求圆面积的方法 getArea()和求圆周长的方法 getPerimeter()。为半径 radius定义访问方法和... -
java基础问题07---定义一个圆Circle类
2021-01-20 19:31:48利用面向对象的编程方法,设计类Circle计算圆的面积和圆的周长 import java.util.Scanner; public class CircleText { public static void main(String[] args) { Scanner value = new Scanner(System.in); ...