Java基础中的一些小知识

132 阅读12分钟

常见的DOS命令

如果想要在System.out.println("")中输出""符号 可以采取用"()",中间括号内写字符的方式

在syso中输入判断的语句,如(3<5)(3>5)会分别输出ture和false 如果输入单纯的运算语句,则会直接输出运算结果 在syso中同时添加语句和字符要用+号连接 在运算中*/%的优先级高于+-

要输入数字,在数字两边用带+号的字符串连接 写句子时直接将原句的数字改成此种形式来写 round()函数的作用是对括号内的数字进行四舍五入

Java的一些杂项知识

关于JDK

Java的语言特性

Java可移植性的实现

Java的加载与执行

JDK、JRE、JVM的关系

JAVA里有JDK,JDK是开发工具包,用于给程序员开发程序用的

JRE表示JAVA的运行时环境,有了这个运行时环境,JAVA编写的程序就可以运行

一般来说,作为开发人员,我们开发软件的时候,当然也要对软件进行运行和测试,所以一般JDK里都是自带有JRE的,但是即使它自带了,我们仍然可以选择对JRE进行独立的安装

JVM是java的虚拟机,java程序最终是运行在JVM虚拟机上的,那JRE是作为运行时环境,那他必须要能够运行java程序,所以只有运行时环境肯定不行的,还需要JVM,一般来说,JRE里就自带有JVM虚拟机

JDK和JRE都可以独立安装的,但JVM不行

如果不搞开发,只搞运行,那安装JRE就行了,如果搞开发,那就全都要,当然实际上全安装就差不多得了,反正也不会占据多少空间,能用就行

JDK目录的介绍

Path环境变量和运行java程序

ClassPath的理解和配置方式

classpath也可以这样配置:classpath=.

路径中".."表示上级目录,"."表示当前目录

Java注释

public class与class的区别

public class在一个类中只能有一个,且必须与该类的类名保持一致

class类可以放在一个类的类中,作为其内部类

一个类中可以没有public class类,只拥有class类

编程语言通用知识

通用知识的意思是说,这些代码规则在其他的语言上很大地方上也是通用的

标识符

主方法中的main是一个方法名,args是一个变量名

关键字

字面值

变量

变量的作用域

变量的分类

数据类型

char类型

利用键盘进行输入

在包名后,类名前要加入import java.util.Scanner;,否则无法运用键盘输入

在对应方法里要写上Scanner keyborad = new Scanner(System.in);

先事先定义好需要输入的量,如

int age;

String height

double weight

在需要输入时,采用变量名=keyboard.next类型名()的形式,注意类型名的首字母要求大写

String类型名则不用写上类型名

age = keyboard.nextInt();

height=keyboard.next();

weight=keyboard.nextDouble();

在对应的类型里只能输入对应的数据类型,否则程序会报错

类似于C语言中的scanf(),而且同样被赋值的变量可以参与运算,也可以用于打印

String类型是引用类型

可以在此种类型里输入英文,数字,字符,都能够编译

中文字符可以输入,但是偶尔会出错

Java图形基本知识

想要制作窗口,首先要导入import javax.swing.JFrame;的头文件

以下的语句在主方法里写入

JFrame win = new JFrame("GraphicsDemo1");

利用本语句创造一个窗口,后续的语句都建立在此语句的基础之上

本语句括号内可以写入程序名,程序名会显示在窗口的左上方,不填也行

win.setSize(800,600);用于设置程序窗口的大小

第一个数字用于调整窗口的横(宽)度

第二个数字用于调整窗口的竖(长)度

都可以赋值为0或者是负数,但基本没有意义

win.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

这个语句的作用是使用户在关闭窗口时程序会停止运行

这个语句即使不加入,程序也能运行,但如果不加入,则关闭之后程序仍然在后台运行,只是窗口被关闭了

小程序这样没问题,但大程序很要命,因此在制作窗口时不能忘记加入这个语句

win.setVisible(true);

该语句用于将视图可视化,如果没有该语句,则窗口不能显示出来

此方法最好就放在所有语句的最后最好,因为不确定放在前面的位置会出什么问题

使用上面四个语句就可以整出一个可视化窗口

但想要在窗口下写/画东西,则还需要下面的两个语句

GraphicsDemo1 canvas = new GraphicsDemo1();

win.add( canvas );//猜测这个语句与import java.awt.*;的头文件有关

目前不知道其原因和作用,总之写就完了

想要制作图形程序,首先需要导入头文件

import java.awt.*;

写入public void paint ( Graphics g )的副方法,其中g是名称,可以进行更改(下文同理)

并且该方法的位置放在主方法前面还是后门都可以运行,但通常把他放在主方法前面

以下内容写于副方法中

利用g.setColor(Color.green);语句可以调整线条颜色,需要其他颜色就填入对应的英文单词

重复使用该语句可以覆盖颜色,对图形赋予新颜色前需要有该语句

利用g.drawRect(100,50,100,200);可以构造矩形,括号里四个数字的作用各不相同

第一个数字的作用是调整矩形的左右位置,数字越大,矩形越右,反之则越左,0位时与左窗口贴合,允许负数

第二个数字的作用是调整矩形的上下位置,数字越大,矩形越下,反之则越上,0位时与上窗口贴合,允许负数

第三个数字的作用是调整矩形的横线长度,数字越大,横线越长,反之则越短,只有一个0位时成线,允许负数

第四个数字的作用是调整矩形的竖线长度,数字越大,竖线越长,反之则越短,只有一个0位时成线,允许负数

对于第一个和第二个数值,负数的值会让他们按反方向移动

对于第三个和第四个数字,允许负数,但是会发生颜色填充现象,且图形会发生轴对称的偏移现象

如果是横线的为负数,则会显示以竖线为对称轴的投影之后的填充图形

如果是竖线的为负数,则会显示以横线为对称轴的投影之后的填充图形

如果是横竖线的为负数,则会显示以横竖线为对称轴投影之后的填充图形

利用g.fillRect(200,400,200,20);可以构造一个填充颜色的矩形,括号里的四个数字的作用各不相同

第一个数字的作用是调整矩形的左右位置,数字越大,矩形越右,反之则越左,0位时与左窗口贴合,允许负数

第二个数字的作用是调整矩形的上下位置,数字越大,矩形越下,反之则越上,0位时与上窗口贴合,允许负数

第三个数字的作用是调整矩形的横线长度,数字越大,横线越长,反之则越短,有0位就消失,允许负数

第四个数字的作用是调整矩形的竖线长度,数字越大,竖线越长,反之则越短,有0位就消失,允许负数

对于第三个和第四个数字,负数会令图形会发生轴对称的偏移现象

利用g.fillOval(160,20,100,200);语句可以构造一个填充颜色的椭圆,括号里的四个数字作用各不相同

第一个数字的作用是调整椭圆的左右位置,数字越大,矩形越右,反之则越左,0位时与左窗口贴合,允许负数

第二个数字的作用是调整椭圆的上下位置,数字越大,矩形越下,反之则越上,0位时与上窗口贴合,允许负数

第三个数字的作用是调整椭圆的横直径长度,数字越大,横直径越长,反之则越短,有0位就消失,不允许负数

第四个数字的作用是调整椭圆的竖直径长度,数字越大,竖直径越长,反之则越短,有0位就消失,不允许负数

利用g.drawOval(200,430,200,100);语句可以构造一个椭圆,括号里的四个数字作用各不相同

第一个数字的作用是调整椭圆的左右位置,数字越大,矩形越右,反之则越左,0位时与左窗口贴合,允许负数

第二个数字的作用是调整椭圆的上下位置,数字越大,矩形越下,反之则越上,0位时与上窗口贴合,允许负数

第三个数字的作用是调整椭圆的横直径长度,数字越大,横直径越长,反之则越短,有一个0位成线,不允许负数

第四个数字的作用是调整椭圆的竖直径长度,数字越大,竖直径越长,反之则越短,有一个0位成线,不允许负数

g.drawArc(270,20,100,200,0,270);该语句用于画一个弧线

倒数第二个字的意思是弧长从几度开始,倒数第一则为弧长多少度

其他位置的数字的作用与椭圆内的相同

g.fillArc(210,280,150,150,45,90);该语句用于画一个填充的弧线

利用g.drawString("Graphics are pretty neat.", 500, 100);可以在图像里写入想要写的字符串

第一个数字的作用是调整字符串的左右位置,数字越大,字符串越右,反之则越左,0位时与左窗口贴合,负数直接消失

第一个数字的作用是调整字符串的上下位置,数字越大,字符串越下,反之则越上,0位时与上窗口重合,负数直接消失

利用getWidth() / 2;语句可以返回当前窗口横(宽)度的一半,当然,它存在误差

利用getHeight() / 2;语句可以返回当前窗口横(宽)度的一半,当然,它存在误差

将这两个值赋予两个int变量,并将这两个变量打印在窗口上,可以获得实时窗口大小的一半的值

但是在使用这条语句前,主方法中要加入extends Canvas

一些补充的碎片知识

tab和空格让程序在编码上对齐,但实际在控制台输出时两者产生的效果并不相同

使用System.out.print的形式来打印可以让输入字符的时候不必转行

可以使用int c=a+b;的形式来定义c,当然前提是a和b已经被定义了

在java中的打印中,需要有()的存在才能让打印的内容输出为计算结果

如果没有括号直接用+号进行连接,则两者会独立打印

a+b

(a+b)

若a=b=12;

则前者结果为1212

后者为24

String可以定义一个变量用于存放字符串并且可以将新的字符串赋予给它

如 String response="";

resopnse="good";

等价于String response="good";

可以利用String类型数据来定义一个密码,再构建一个while循环,只有当输入的密码相同时才允许通过循环,从而实现一个简单地登录系统

while循环内外都写入一个输入,用于实现循环通过,这是一种基本想法

使用Thread.sleep()语句,可以让程序编译到这里时停止一段时间,停止时间又自己设定数字决定,目前还不知道有什么特别的作用

使用前要在方法前加上throws InterruptedException

equals()语句的用法,用于对比字符串是否相等,若相等则返回true,不相等则返回false

如string k = "u"

则调用此词语的语法为,k.equals();,()里可以直接方字符串,如("u"),或者放另外一个定义好的字符串如(a),同时该语句可以用于判断,跟==很像,但==实际比较的两者的地址是否相同,要比较内容不同还得用equals语句,该语句不可用于对比char和String的不同类型的字符,只能比较同属于String的

length()可以用来返回一个int类型的表示被测量的字符串的长度的数,返回的数字与字符串长度一致,不带结尾结束字符

如String str = "Hello",如何要调用length(),应该使用str.length()的形式,在本例中该语句会返回5

charAt(int n)用于返回字符串中第n+1个的字符(返回类型是char类型),n是从0开始的,最高位为n-1

如在上例中,如果要调用该方法应该使用如下形式,str.charAt(n),当n=0时,返回"H",当n=4,返回"o"

String 所定义的变量可以直接放在syso中,会被正确打印出来,给String变量赋值要在=号后门加""

可以定义一个返回String类型的函数,然后再syso中调用这个函数,也能够正确打印

在MyEclipse里,ctrl+/是自动补全,ctrl+d是删除一行

在MyEclipse里先创建一个文件,在文件里定义一个类,写入其需要的语句及其特性

接着在另外一个文件里new一个对象,然后可以通过这个对象进行访问

tips:package起到一个方便程序管理的作用

两个不同空间里的变量名可以重复

方法区主要用于存放各种方法,可以简单理解为class文件和其他代码

所有的字符串都必须用" "来写

强行退出程序的命令是System.exit(0);执行这块代码会强行终止程序