Java Basic
文章平均质量分 58
java相关基础语法和难点
康康好老啊
God don't let me die but let me suffer, so I play with god.
展开
-
java关键字9:instanceof关键字
针对这种情况,java提供了instanceof关键字,用于判断一个对象是否是一个类或者接口的实例,表达式返回值为boolean类型。如果这个实例是legoCity类型,那么就会执行代码1;如果是legoCityPolicestation类型,那么就会执行代码2。概念:对象的类型转换指的是可以将一个对象的类型转换成继承结构中的另一个类型。分为两种情况:向上转型和向下转型.现在我们假设legoCity是父类Lego的一个子类。但是这样会发生报错(报错原因略微有点绕此处不阐述)。原创 2022-12-19 16:30:45 · 131 阅读 · 0 评论 -
java关键字8:implement关键字
接口和类之间是实现关系,通过implements关键字表示。原创 2022-12-19 16:26:50 · 2967 阅读 · 0 评论 -
java关键字7:extends关键字
如上图,继承就是,当我们发现对象2拥有和对象1相同的变量和方法时,如果我们再去定义一遍就会十分麻烦。这时候我们可以只定义一个对象3,将对象3包含上述这些变量和方法,这样对象3就成为了一个父类,而对象1和2就是子类,相当于从父类那里“继承”了变量和方法,这里的变量和方法就相当于财产。继承父接口的子接口会获得父接口中定义的所有抽象方法和变量。 在现实生活中,继承表示的意思是下一代人继承下一代人的财产,换一种理解方法就是上一代人的财产进行再“使用”。,即一个接口可以继承多个父接口。原创 2022-12-19 16:21:04 · 118 阅读 · 0 评论 -
java关键字6:abstract关键字
抽象方法:在子类中,有一些有共性的方法是可以抽象成父类中一个方法的,但是由于每个子类具体执行内容有差别,所以子类中其方法需要进行小的修改。在这种情况下,父类中不能确定具体的方法体,于是就将其定义为抽象方法。注意点:由于类是“抽象”类,所以不能被实例化,即不能使用new创建对象。这是因为抽象类中可能包含了抽象方法,而抽象方法不一定定义了具体内容,所以无法使用。如果想要调用抽象类,必须新建一个子类继承于该抽象类,然后才能实现抽象方法。抽象类:抽象方法所在的类。只要该类中存在抽象方法,则该类必须声明为抽象类。原创 2022-12-18 14:44:42 · 57 阅读 · 0 评论 -
java关键字5:final关键字
常量的命名规范:如果常量只有一个单词那么字母全部大写;如果常量是多个单词那么不仅字母要大写,单词之间需要用下划线分隔开。final关键字可以修饰方法、类和变量,被修饰的之后就无法再被改变,即不能再被继承或者被子类重写。final修饰的变量是引用类型:变量存储的地址值不能发生改变,但是对象内部可以改变。final修饰的变量是基本类型:变量存储的数据值不能发生改变。表明该方法是最终方法,不能被重写。表明该变量是常量,只能赋值一次。表明该类是最终类,不能被继承。原创 2022-12-18 14:42:24 · 55 阅读 · 0 评论 -
java关键字4:super关键字
super关键字与this关键字很像,都是遇到重名的问题时可能会使用到的一种关键字。原创 2022-12-17 19:20:55 · 76 阅读 · 0 评论 -
java关键字3:private关键字
所以在private定义之后,一般会在类中加上set()方法与get()方法,这样定义的变量可以在别的类中使用,只不过要满足set()中设定的条件。比如现在你想要买一个乐高(其实是作者本人想要买一个),你想让你妈帮你买一个(假定你还是个初中生没有零花钱)。你妈肯定会对你想买的乐高价格要求有限制(必须小于300块),所以她自己编写了一个程序去选择买的乐高(好怪)。这样,一旦你给m赋值的大小超过300,那么系统就会自动提升:“你想得美!你妈把Lego类的代码隐藏了起来,向你展示了main方法的部分代码。原创 2022-12-17 19:12:20 · 250 阅读 · 0 评论 -
java关键字2:static关键字
static表示静态,是java中的一个修饰符,可以修饰成员方法和成员变量。原创 2022-12-11 23:14:33 · 115 阅读 · 0 评论 -
java关键字1:this关键字
引入了这两个概念之后,就会遇到一个问题,就是如果同一个类中,成员变量名和局部变量名名字相同,这时候如果我在方法末尾打印这个变量的值,那么出来的结果会是什么呢?如果我不想用就近原则,访问远的变量的值,这时候就要使用到this关键字。利用this关键字可以直接传输成员变量的值。在java中,如果不加其它修改,这个结果满足==“就近原则”==,即结果是离打印语句最近的那个变量的值。使用this关键字破坏就近原则,没有使用this关键字的服从就近原则。this关键字可以调用成员变量,那么也可以调用成员方法。原创 2022-12-11 23:10:05 · 133 阅读 · 0 评论 -
java基础语法(五)——面向对象9:多态
多态指的是同类型的对象表现出的不同形态的特征。具体来说,是指同一操作作用于不同的对象可以有不同的解释,并产生不同的执行效果。在java中,多态是指把类中具有相同功能的不同方法使用同一个方法名实现。例子:假设乐高城市组(legoCity)、乐高漫威(legoMarvel)都是乐高(Lego)的子类,我们想打印他们的价格,那我们可以如下:如果对应的子类对象是乐高城市组,那么打印的就是乐高城市组的价格,另外一个也同理。调用多态有下面三个前提:在下面的代码中,我们定义了一个Lego父类和两个子类,两个子类都进行原创 2022-12-06 23:37:34 · 168 阅读 · 0 评论 -
java基础语法(五)——面向对象8:接口
接口就是一种规则,是对全局常量和公共抽象方法的抽象集合。格式:用interface关键字来定义接口接口和类之间是实现关系,通过implements关键字表示例子:接口的继承概念:与父类相似的是,接口也可以通过extends关键字实现继承。继承父接口的子接口会获得父接口中定义的所有抽象方法和变量。需要注意的是,接口支持多重继承,即一个接口可以继承多个父接口。格式:接口的特点接口中成员变量的特点成员变量只能是常量成员变量默认带有修饰符 public static final接口中成员方法原创 2022-12-06 23:27:48 · 136 阅读 · 0 评论 -
java基础语法(五)——面向对象7:抽象类
概念:在子类中,有一些有共性的方法是可以抽象成父类中一个方法的,但是由于每个子类具体执行内容有差别,所以子类中其方法需要进行小的修改。在这种情况下,父类中不能确定具体的方法体,于是就将其定义为抽象方法。格式:使用abstract关键字抽象类概念:抽象方法所在的类。只要该类中存在抽象方法,则该类必须声明为抽象类。格式:使用abstract关键字例子:注意点:由于类是“抽象”类,所以不能被实例化,即不能使用new创建对象。这是因为抽象类中可能包含了抽象方法,而抽象方法不一定定义了具体内容,所以无法使用原创 2022-12-05 23:15:27 · 151 阅读 · 0 评论 -
java基础语法(五)——面向对象6:继承
在现实生活中,继承表示的意思是下一代人继承下一代人的财产,换一种理解方法就是上一代人的财产进行再“使用”。而java中继承也有这一特点 如上图,继承就是,当我们发现对象2拥有和对象1相同的变量和方法时,如果我们再去定义一遍就会十分麻烦。这时候我们可以只定义一个对象3,将对象3包含上述这些变量和方法,这样对象3就成为了一个父类,而对象1和2就是子类,相当于从父类那里“继承”了变量和方法,这里的变量和方法就相当于财产。 使用继承的优点也很明显,这样可以大量减少重复性代码,即提高了代码的复用性。A为原创 2022-12-05 23:12:42 · 76 阅读 · 0 评论 -
java基础语法(五)——面向对象5:内部类
内部类指的是在一个类里面再定义一个类。当一个类表示的事物是外部类的一部分且这个类单独出现是没有什么意义的时候,我们会将这个类再定义成一个内部类。该类可以直接访问外部类的成员,也可以访问方法内的局部变量。作用:当我们只需要使用类一次时,为了这一次创建一个单独的类会比较浪费,所以我们可以使用匿名内部类,而不用为此再创建一个新的类。创建对象的方式2:外部类编写方法,对外提供内部类对象(在private修饰内部类的时候使用)① 在Children类中,如果把class类名去掉,那么就剩下了一个没用名字的类。原创 2022-12-02 14:58:32 · 50 阅读 · 0 评论 -
java基础语法(五)——面向对象4:代码块
如果在构造方法Lego(String name)、Lego(String name, int price)中都需要同样一部分代码,那么可以将这部分代码抽出来写成构造代码块。作用:执行具体操作,对变量的执行范围加以限制,提前结束变量的生命周期(因为变量是局部的有范围限制)需要通过static{}修饰,并且无论调用类多少次,其只执行一次且在一开始执行。在执行时,构造代码块是在创建对象时被调用,会先执行构造代码块再执行构造方法。写在方法外部、类内部(成员位置)写在方法内部的代码块。写在方法外部、类内部。原创 2022-12-02 14:47:36 · 77 阅读 · 0 评论 -
java基础语法(五)——面向对象3:构造方法
在定义一个变量的时候,我们往往会给变量附上初始值,这一过程也称为初始化。而在类中,我们也需要给类中的成员变量进行初始化操作,不过这里的初始化更多是广义上的,不仅仅是赋值,也可以是一个初始默认行为。这时候我们就会在类设置一个特殊的方法——构造方法,去完成初始化这一目的。方法的重载是在一个类中可以定义多个方法名相同,但是参数不同的方法。调用时,会根据不同参数自动匹配对应的方法。本质上,重载的方法实际上是完全不同的方法,仅仅是名称不同。l1调用的是构造方法(1),l2调用的是构造方法(2)构造方法没有参数输入。原创 2022-12-01 13:31:33 · 82 阅读 · 0 评论 -
java基础语法(五)——面向对象2:封装
为了能达到封装的目的,就需要类里面的成员变量不能被直接访问,如果可以直接访问并修改这些变量,那么就无法达到隐蔽性和安全性。封装是通过类将所要实现的功能“包装”成一个黑匣子,通过这个黑匣子我们能实现某种功能,但是其中的数据或者细节被隐藏起来,不向外界透露方法的具体的运行逻辑和数据流。被private修饰的成员变量只能在本类中被访问。后面我会详细介绍这个关键字。我们可以另外设置两个方法(属性访问器)于设置和接收成员变量的值。可以理解成把成员变量和成员方法“打包起来”,这个包接收输入,并会得到一个输出。原创 2022-12-01 12:27:14 · 57 阅读 · 0 评论 -
java基础语法(五)——面向对象1:基础概念
如果我们想要使用一个类,那么首先需要去定义一个类。关键字 class 类名 {1 、成员变量(代表属性,一般是名词);属性类型 成员变量名 2 、成员方法(代表行为,一般是动词);修饰符 返回值类型 方法名( [ 参数列表 ] ) {方法体;return 返回值;} 3 、构造器 4 、代码块 5 、内部类 } //例子: public class Lego {//1、成员变量(代表属性,一般是名词);//2、成员方法(代表行为,一般是动词);原创 2022-11-29 23:09:06 · 93 阅读 · 0 评论 -
Java基础语法(四)
介绍Java中方法的基本概念、定义格式、重载等基础概念原创 2022-11-29 22:54:41 · 86 阅读 · 0 评论 -
Java基础语法(三)
Java语法中的数组的基本概念、定义、初始化、二维数组基础知识原创 2022-11-29 22:45:30 · 220 阅读 · 0 评论 -
Java基础语法(二)
java基础(二)运算符:算术运算符、自增自减运算符、赋值运算符、关系运算符、逻辑运算符、短路逻辑运算符、三元运算符、运算符优先级流程控制语句:顺序语句、分支语句——if、分支语句——switch、循环语句——for、循环语句——while、for和while的区别原创 2022-10-01 18:18:14 · 86 阅读 · 0 评论 -
Java基础语法(一)
java基础1:涉及注释、关键字、字面量、变量、数据类型、标识符等基础内容原创 2022-09-30 19:12:07 · 149 阅读 · 0 评论