1.An example
package test;
public class People
{
int height;
String ear;
void speak(String s)
{
System.out.println(s);
}
}
class A
{
public static void main(String args[])
{
People zhubajie;
zhubajie = new People();
zhubajie.height=170;
zhubajie.ear="两只大耳朵";
System.out.println("身高:"+zhubajie.height);
System.out.println(zhubajie.ear);
zhubajie.speak("师傅,咱们别去西天了,改去月宫吧");
}
}
说明:
1、括号及标点符号必须是英文状态下输入的,字符串(双引号括起的 变量)中除外
2、Java是大小写敏感的
3、一个Java源文件由若干类组成
4、class是Java的关键字,用来定义一个类,“class Hello”表明定义 了一个名称为“Hello”的类;public是对class的修饰符
5、main是类“Hello”包含的一个方法 – 一个Java程序中可包含多个类,其中必须要有一个类含有main方法; – main方法必须修饰为“ public static void ” 。
6、String args[ ]:main方法的参数,表示传入一个字符串数组类型的 参数
7、Java源文件命名规则:
– 如果源文件中有多个类,那么只能有一个类是public类,而且源文件名与该类 名完全相同;
– 如果源文件中没有public类,那么文件名只需要和其中某个类名相同; – 扩展名是“ .java ”。
2、基本数据类型
boolean、byte 、short、int、long、float、double、char
boolean:Java中的布尔类型不能用0和1代替。
整数类型:
1)byte:-2^7~2^7-1
2)int:-2^31~2^31-1
3)short:-2^15~2^15-1
4)long:-2^63~2^63-1
字符常量:Unicode表中的字符就是一个字符常量
char:内存分配给2个字节,变量缺省值:'\u0000'
浮点类型:
float:单精度浮点数,常量后有后缀f或F,float x= 12.76f,tom=1234.987f;4个字节,八位有效数字
double:8个字节,16位有效数字
3、输入、输出操作
·输入基本类型数据
– Scanner类的对象可以读取用户从键盘输入的各种基本类型的数据。
– 在java.util包中,使用时需import
– 通过Scanner对象调用下列方法,读取用户输入的基本类型的数据:
◼ nextBoolean()、nextByte()、nextShort()、nextInt()、
nextLong()、nextFloat()、nextDouble()
◼ next() :读取一个单词,以空格作为分隔符
·输出基本类型数据
– System.out.println() 输出数据后换行
– System.out.print() 输出数据后不换行
– System.out.printf(“格式控制部分”,表达式1,表达式2….)
格式化输出,有%d、%c、%f 、%s、%md 、%m.nf等格式符:
◼例如:System.out.printf(“%d,%f”,12,23.78);
4、数组
4.1数组的声明
· 声明数组时无需指明数组元素的个数,也不为数组元素分配内存空间
·不能直接使用,必须经过初始化分配内存后才能使用
int[] a;//声明,不需要在括号中谢元素个数 String[] s;
4.2 数组的创建
·元素个数可以是常量也可以是变量
·分类:基本类型(内存栈中保存的值就是该变量的值)
引用数据(内存栈中保存的值是指向变量值的地)
int a[]=new int[3];//基本类型 int ai[];ai=new int[10]; String b[]=new String[3];//引用类型 String ob1=new String("abc"); b[1]="abcdfds";
4.3 数组元素的初始化
• 可以在声明数组时初始化,数组长度即固定为元素个数。
int a[]={22,33,22,44};
• 也可以在数组创建之后给数组元素赋值。
int a[]=new int[4];a[0]=22;
4.4 字符串数组
字符串数组
String[] strArray;
strArray=new String[8];
strArray[0]="hello";
for(String i:strArray)
System.out.println(i);
4.5 多维数组引用
多维数组,引用类型
int array[][]=new int[3][5];
int uneven[][]={{1,2,2},{2,3}};//不规则表
System.out.println(uneven.length);//返回二维数组的行数
System.out.println(uneven[0].length);//
Java的运算符和表达式
Instanceof 判断某个是哪个类的
boolean isString=x instanceof String;
5.语句
6、运行
能在DOS命令窗口中运行Java程序
编写.java文件
修改环境变量
命令提示符里面按照下面步骤编写
/
C:\Users\Administrator>javac
用法: javac <options> <source files>
其中, 可能的选项包括:
-g 生成所有调试信息
-g:none 不生成任何调试信息
-g:{lines,vars,source} 只生成某些调试信息
-nowarn 不生成任何警告
-verbose 输出有关编译器正在执行的操作的消息
-deprecation 输出使用已过时的 API 的源位置
-classpath <路径> 指定查找用户类文件和注释处理程序的位置
-cp <路径> 指定查找用户类文件和注释处理程序的位置
-sourcepath <路径> 指定查找输入源文件的位置
-bootclasspath <路径> 覆盖引导类文件的位置
-extdirs <目录> 覆盖所安装扩展的位置
-endorseddirs <目录> 覆盖签名的标准路径的位置
-proc:{none,only} 控制是否执行注释处理和/或编译。
-processor <class1>[,<class2>,<class3>...] 要运行的注释处理程序的名称; 绕过默认的搜索进程
-processorpath <路径> 指定查找注释处理程序的位置
-parameters 生成元数据以用于方法参数的反射
-d <目录> 指定放置生成的类文件的位置
-s <目录> 指定放置生成的源文件的位置
-h <目录> 指定放置生成的本机标头文件的位置
-implicit:{none,class} 指定是否为隐式引用文件生成类文件
-encoding <编码> 指定源文件使用的字符编码
-source <发行版> 提供与指定发行版的源兼容性
-target <发行版> 生成特定 VM 版本的类文件
-profile <配置文件> 请确保使用的 API 在指定的配置文件中可用
-version 版本信息
-help 输出标准选项的提要
-A关键字[=值] 传递给注释处理程序的选项
-X 输出非标准选项的提要
-J<标记> 直接将 <标记> 传递给运行时系统
-Werror 出现警告时终止编译
@<文件名> 从文件读取选项和文件名
C:\Users\Administrator>d:
'd:' 不是内部或外部命令,也不是可运行的程序
或批处理文件。
C:\Users\Administrator>d:
D:\>javac hello.java
hello.java:3: 错误: 需要';'
System.out.println("hello")
^
1 个错误
D:\>javac hello.java
D:\>java hello
hello