基础知识的学习
1、什么是java?
它就是一门面向对象计算机编程语言
Java具有简单性、面向对象、分布式、健壮性、安全性、平台独立与可移植性、多线程、动态性等特点
直白来说java就相当于生活中的翻译官
翻译官相信大家还是知道干嘛用的!
是不是就是两个不同语言的人相互交流的时候需要翻译官去翻译给两边听
Java就是人跟计算机交流的中间人
Java能够把人在电脑中编写的程序翻译成计算机语言,并运行程序发布的指令
并把运行的结果显示出来
2、基本的数据类型有哪些?
基本的八种数据类型:
byte(1个字节) 字节型 ;short (2个字节)短整型 ;int (4个字节)整型 ;long (8个字节)长整型; char(2个字节) 字符型;float (32个字节)单精度浮点型;double (64个字节)双精度浮点型; boolean 布尔型
3、变量:
数据类型 变量名;
变量名 = 数值;
4、运算符:
算数运算符: + - * / %
逻辑运算符: &&(且) ||(或) !(非)
关系运算符:== > < >= <= !=
赋值运算符: =
连接运算符:+
选择运算符: 判断条件?数值1:数值2;
自增自减运算符: ++; --; +=; -=
5、作用域:
{}包裹的内容
6、分支结构:
if分支结构
if(判断语句){执行语句;}
if(判断语句){执行语句;}else{执行语句;}
if(判断语句){执行语句;}else if(判断语句){执行语句} ... else{执行语句}
switch分支结构:
switch(参数){
case 1:
执行语句;
break;
...
default:
执行语句;
break;
}
循环结构(三种):
while循环:
while(判断条件){
语句代码块;
}
do-while循环:
//do-while循环:不管你的判断条件为不为真 都会执行一次
do{
语句代码块;
}while(判断条件);
for循环:
for(;判断条件;){
语句代码块;
}
7、java的注释有哪几种?
1、单行注释:
2、多行注释:
3、文本注释:
8、java的数据学习
(1)数组:
什么是数组?
数组就是可以用一个变量装多个值.
怎么定义数组?
语法结构
数据类型[] 变量名;
int[] nums;
怎么给数组赋值?
变量名[下标] = 数值;
怎么使用数组?
变量名[下标]
(2)数组的遍历:
循环便利数组:
for(int i=0;i<数组名称.length;i++){
System.out.println(数组名[i]);
}
(3)常用的数组排序方式:
冒泡排序:
/**
* 冒泡排序整数型数组
* @param array
*/
public static void bubbleSort(int[] array){
int temp;
for(int i=0;i<array.length-1;i++){
for(int j=0;j<array.length-1-i;j++){
if(array[j] > array[j+1]){
temp = array[j];
array[j] = array[j+1];
array[j+1] = temp;
}
}
}
System.out.print("[");
for(int i =0;i<array.length-1;i++)
System.out.print(array[i] + ",");
System.out.print(array[array.length-1] + "]");
}
选择排序:
/**
* 选择排序整数型数组
* @param array
*/
public static void selectionSort(int[] array){
int temp;
for(int i=0;i<array.length-1;i++){
for(int j=i+1;j<array.length-1;j++){
if(array[i] > array[j]){
temp = array[j];
array[j] = array[i];
array[i] = temp;
}
}
}
System.out.print("[");
for(int i =0;i<array.length-1;i++)
System.out.print(array[i] + ",");
System.out.print(array[array.length-1] + "]");
}
9、Java中的内部类
内部类--内部类可以直接访问外部类的资源1、成员内部类(作为类里面的属性)
特点:
不能使用static修饰
能访问外层类的变量和方法
怎么实现内部类的实例化?
OuterClass.InnerClass innerClass = new OuterClass().new InnerClass();
外部类名.内部类名 内部类名 = new 外部类名().new 内部类名();
怎么表示外部类属性?
OuterClass.this.menber;
外部类名.this.成员变量;
实例:
String name = "小刘";
class inner{
String i_name = "内部小刘";
public void i_m(){
System.out.println("这是内部类的方法");
System.out.println(new cy().name);
}
public static void main(String[] args) {
inner i = new cy().new inner();
System.out.println(i.i_name);
i.i_m();
}
2、局部内部类(方法里面的类或if等结构等里面定义的类)
方法内部类只能在定义该内部类的方法内实例化
实例:
<pre name="code" class="java">int age = 18;
public void m(){
System.out.println("方法");
class jb_inner{
public void m_inner(){
System.out.println( new jb().age);
System.out.println("这是方法里面的内部类");
}
}
new jb_inner().m_inner();
}
public static void main(String[] args) {
new jb().m();
}
3、匿名内部类(没有名字和构造方法的类)特点: 一个类是抽象的或是一个接口,那么其子类中的方法都可以 使用匿名内部类来实现,用其隐含实现一个接口或实现一个类, 最常用的情况是在多线程的实现上 没有class extends implements关键字 隐式继承一个父类或者实现一个接口实例:
public class nm {
public static void main(String[] args) {
parent p = new parent(){
//内部类,这个方法本来是写在另一个类里面
public void chi(){
System.out.println("吃饭");
}
};
p.chi();
}
}
abstract class parent{
abstract public void chi();
}
内部类的几个注意点:
1.静态上下文中声明的内部类只能访问外部类的静态属性和方法
2.内部类中不能声明静态变量和方法
内部类的继承:
成员内部类继承成员内部类,还可以继承外部类,或其他类
一个类里面的内部类继承另一个类里面的内部类