JAVA基础语法上

JAVA基础语法上,第1张

运行JAVA程序需要使用JRE
开发JAVA程序需要使用JDK
JDK包含开发工具和JRE,JRE又包含系统API和JVM.
JAVA1.8:编译工具:JAVAC.exe
运行工具;java.exe
bin文件夹:该文件夹存放了JDK的各种具命令
include:存放平台特定的头文件
lib:存放JDK工具的一些补充JAR包
conf:存放JDK相关配置文件(1.8版本没有这个文件夹)
Source:源(Src)
cd指令一次进入两个文件夹:cd ruanjian\java1.8
cls:清屏
cd…回退到上级目录
exit:退出命令窗口

一、JAVA的开发过程
编写、编译、运行。程序员参与的是程序编写过程,编译和运行都是可以通过软件运行的。编译过程中,源文件(.java)通过编译生成字节码文件(.class)。
javac xxx.java编译运行工具,java xxx运行工具
字符用UTF8编码,必须要用UT8解码。
1、第一个JAVA语言:

public class HelloWorld//文件命名要与class后面的一致
{
	public static void main(String[] args)
	{
		System.out.println("hello,this is java world程勇");
	}
	
}

第1行. public表示权限公共的意思,外部可以随意调用和访问,class表示类 ,HelloWorld就是类名字,此行代码表示的含义:创建了一个名为HelloWorld的权限公开的java类。

第2行main叫方法名(或者叫函数名), static表示静态的, 也就是只有一份, void表示无返回值(代码执行结束就结束了不用任何的反馈),此行代码的表示含义: main方法是属于当前类HelloWorld的,只要这一份, 且执行后没有值返回,.表示调用

第3行.输出语句,系统调用内部输出方法,打印出双引号中的内容


javac HelloWorld.java生产二进制文件HelloWorld.class,java HelloWorld,运行编译完成的文件。
2、第二个JAVA程序

public class HelloWorld//文件命名要与class后面的一致
{
	public static void main(String[] args)
	{
		int num = 10;
		System.out.println("num的值是:"+num);//加号表示拼接,把num的值拼接到字符串后面
		System.out.println(num);//直接输出num
		System.out.println("hello,this is java world程勇");
		int 年龄 = 18;//汉语也能作为标识符
		int ¥ = 100;//人民币符号也能作为标识符
		System.out.println(年龄);
		System.out.println(¥ );
	}
	
}


JAVA中标识符是为方法、变量、用户定义项所定义的名称,其第一个字母是:字母、下滑线、美元符号,注意数字不能作为首字母开头。类是文件名,方法是函数名。
总结:
这里我们还遇到一个问题,环境配置没问题,javac编译不通过,解决方法是把该环境变量置顶。

标识符命名规则:

1)标识符不能以数字作为首字母开头;
2)不能使用java关键字或保留字;
3) Java 严格区分大小写;

命名规范:

4)建议:标识符号需要做到英文的“见名知意"。
5)大驼峰命名法:首字母大写,后面组合的每个单词首字母大写—类名
6)小驼峰命名法:首字母小写,后面组合的每个单词首字母大写—方法名
7)变量命名规范:全部小写

3、JAVA中的常量:
javac中的常量一经初始化不可修改。

public class con
{
	public static void main(String[] args)
	{
		//关键词:final最终的,不可改变的
		public static final double PI = 3.14;//静态常量
		final int num = 10;//成员常量,定义之初必须要赋值
		//num++;//编译错误,原因:常量定义后不可改变
	
	}
}

常量的分类:
整数常量:所有整数
小数常量:所有小数
字符常量:用单引号引起来,必须有内容,只有一个字符
字符串常量:用双引号引起来,可以写多个字符,必须有内容
布尔常量:只有两个值:true,false
空常量:只有一个值

4、java中的变量:
java语言是强类型语言,强类型语言包含以下两种含义:
(1)所有变量必须先声明后使用
(2)指定类型变量只能接受类型与之匹配的值

变量的作用域:
根据变量类型不同,变量分为两类:全局变量和局部变量。
成员变量:无 static修饰符;用对象名.变量名访问;其一直存在;作用范围是:类的内部,方法之外。
局部变量:有static修饰符,用类名.变量名访问或(对象名.变量名访问),类存在其存在

//全局变量
public class variable
{
	int num = 10;
	public static void main(String[] args)
	{
		variable gv = new variable();
		//variable gv = new variable1();//这两种创建对象方法均可,意为创建了一个名为gv的对象,其属于variable里面的variable1对象
										//两个对象同时创建会存在num不知道该存到哪里的情况。
		System.out.println(gv.num);
	}
}

//局部变量
public class variable
{
	static int num = 10;
	public static void main(String[] args)
	{
		variable gv = new variable();
		//variable gv = new variable1();//这两种创建对象方法均可,意为创建了一个名为gv的对象,其属于variable里面的variable1对象
										//两个对象同时创建会存在num不知道该存到哪里的情况。
		gv.num = 30;								
		System.out.println(variable.num);//类.变量名访问
		System.out.println(gv.num);//对象.变量名访问
	}
}


3、java中的方法
静态方法的调用与静态变量一样,都有两种。

public class staVarial
{
	public static void main(String[] args)
	{
		staVarial Lv = new staVarial();
		Lv.sum1();
		staVarial.sum2();
	}
	public static void sum1()
	{
		int a = 10;
		int b = 20;
		System.out.println("sum1开始运行了");
		System.out.println(a);
		System.out.println(b);
		System.out.println("sum1运行已结束");
	}
	public static void sum2()
	{
		int a = 110;
		int b = 220;
		System.out.println("sum2开始运行了");
		System.out.println(a);
		System.out.println(b);
		System.out.println("sum2运行已结束");
	}
	//代码块是属于对象,在创建对象的同时开始运行
	{
		System.out.println("代码块开始执行了");
		int a = 22;
		int b = 33;
		System.out.println(a);
		System.out.println(b);
		System.out.println("代码块运行已结束");
	}
}


代码块是属于对象,在创建对象的同时开始运行
静态方法可通过类名.方法名来访问,也可以通过对象名.方法名来访问。
4、字符集(ASC||编码)
ANSI编码:仅前128个字符和ASC||编码相同,后面的字符和所在国家的字符相同。ANSI编码包括了很多编码,中国制定了GB2312编码,用来把中文编写进去。
阶段复习一:JAVA的跨平台性
(1)java具有很强的语言规范性,对于不同平台,数据类型存储体现是一致的。c/c++中整数类型的长度是按占位宽度来决定的,int整数类型:
16位:2字节
32位:4字节
64位:8字节
java中,int整数类型就占4个字节。
(2)统一生产.class文件,各种不同的应用平台虚拟机使用了相同的程序存储格式,就是指字节码(bytecode),java的虚拟机只与字节码组成的.class文件进行交互,即一次编译,到处使用。
(3)java虚拟机的存在,可以将class文件转化为对应平台的二进制文件。
阶段复习二:环境变量的配置
JDK:JAVA的开发工具,开发java应用程序最小环境。
JRE:JAVA的运行环境,运行java应用程序最小环境。
JVM:JAVA虚拟机,解析和执行字节码文件。
大小关系:JDK>JRE>JVM。
阶段复习三:基础的DOS命令
javac :编译命令,将.java文件编译成.class文件
java :运行命令,将.class文件加载并执行(由java虚拟机来完成)
阶段复习四:
(1)开发应用程序需要经历哪几个必要的阶段
编写、编译、运行
(2)程序的主入口
main方法
(3)标识符的命名规则
标识符:字母、数字、$、_;首字母不能是数字。
变量名:java严格区分大小写。
java不能以关键字和保留字命名。
中文可以作为变量使用,但不建议
变量名应该见名知意:

int num = 0int age = 18;
String username = "张三"

变量遵循小驼峰命名法,首字母小写,其余每个字母都大写。
阶段复习五:
常量:通常由final static所修饰,定义后不可改变。
变量:定义之后,值可改变,又分为成员变量和局部变量。
(1)成员变量,定义在类里面,方法和代码块外面。

public class HelloWorld
{
    String name = "liHua";//成员变量里的全局变量
    public static void out()
    {
        HelloWorld hw1 = new HelloWorld();
        hw1.name = "李华";
        HelloWorld hw2 = new HelloWorld();
        hw2.name = "李黎明";
        System.out.println(hw1.name);
        System.out.println(hw2.name);
    }
    public static void main(String[] args)
    {
    out();
    }
}
//不止一份,任意对象改变值不会影响其他对象访问
//全局变量只能对象.变量名访问

import java.sql.SQLOutput;

public class HelloWorld
{
    static String name = "liHua";//成员变量里的静态变量
    public static void out()
    {
        HelloWorld hw1 = new HelloWorld();
        hw1.name = "李华";
        HelloWorld hw2 = new HelloWorld();
        hw2.name = "李黎明";
        System.out.println(hw1.name);
        System.out.println(HelloWorld.name);
    }
    public static void main(String[] args)
    {
    out();
    }
}
//只有一份,任意对象改变值会影响其他对象访问
//静态变量与全局变量只差一个关键字static
//静态变量可(对象.变量名)/(类.变量名)访问


(2)局部变量定义在方法内部,方法的参数中,或代码块中;不同方法或代码块中可重名

、逻辑运算符
&&:左右为真结果才为真
||:左右有一个为真就为真
!:取反 *** 作

需要注意的是:
1、与运算中,需要注意短路现象。
	短路现象发生:当判断到有一个为false时,整个表达式就结束运行了
2、或运算中,需要注意短路现象。
	短路现象发生:当判断到有一个为true时,整个表达式就结束运行了
短路情况一定程度上提升了运算性能。
确定的是:逻辑运算结果一定时boolean类型:true和false。
当1<2<3时,程序表达式应该为:(1<2 && 2<3)应该拆分为两个表达式。
public class LuoJi
{
	public static void main(String[] args)
	{
		System.out.println(false && false);
		System.out.println(false && true);
		System.out.println(true && false);
		System.out.println(true && true);
		int a = 1;
		System.out.println(false && ++a);
		System.out.println(a);
		
		int b = 2;
		System.out.println(true || ++b);
		System.out.println(b);
	}
}

欢迎分享,转载请注明来源:内存溢出

原文地址:https://www.54852.com/langs/892303.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-14
下一篇2022-05-14

发表评论

登录后才能评论

评论列表(0条)

    保存