少儿编程java教程 java少儿编程内容_少儿编程java教程

Java源程序经过编译器编译后变成字节码,字节码由虚拟机解释执行,虚拟机将每一条要执行的字节码送给解释器,解释器将其翻译成特定机器上的机器码,然后在特定的机器上运行。



面向过程编程和面向对象编程

面向过程编程:通过一个函数去完成一件事情,而且这件事情完成之后,不会留下任何的遗产。或者理解为:一次性。

面向对象编程:在完成一件事情时,会将事情中的实体对象抽象出来,形成「类」的概念,事情的完成是通过类的对象之间发生关系去实现的。

实例 1:96 班同学今天到南通青鸟 IT 教育上课

面向过程实现:今天早上** 96 班同学** 到 南通青鸟 IT 教育

面向对象实现:96 班同学(上课)、南通青鸟 IT 教育

实例 2:96 班同学今天到南通大学踢球

面向过程实现:今天早上** 96 班同学** 到 南通大学踢球

面向对象实现:96 班同学(踢球)、南通大学

在面向对象编程中,实体对象是可以被「复用」的。



类和对象概念

类是一群对象的特征母版,对象是类的实现。

特征(类)包含的内容有:基本属性(属性)、行为(方法



标识符和关键字

标识符包含了 Java 中默认的关键字以及程序员自己定义的类名、方法名、变量名等等。

标识符的命名规范:

  • 只能包含数字、字母(大小写,Unicode字符)、下划线 _、美元符

$

  • 不能以数字开头
  • demo1、demo-1、$demo、_demo、1demo

分隔符:

  • 花括号 

{}

  • :定义代码块,逻辑上是一个整体,包括类的主体、方法体、静态代码块、条件和循环语句的执行体;
  • 分号 

  • :语句的结束,如果出现在一行中有几条语句,那么多条之间也要用 ; 隔开;
  • 方括号

[]

  • :用于数组中;
  • 圆括号 

()

  • 空格:单个空格、Tab 键、Enter 键,空格的出现是不会影响程序运行的,但是良好的缩进,可以提高程序的可读性;
  • 圆点 

.

在 Java 中,只要看见单词首字母是大写的,那就是类

数据类型

Java 是一种强数据类型的语言,就是指在变量进行定义的时候,就指定了变量的数据类型是什么。

变量的概念:把一堆数据起了个名字。

数据类型其实就是在内存中用不同的结构对数据进行存储和运算。

内存:运行中的程序都会占用内存空间,因为程序在运行过程中,需要开辟包括方法栈区、变量....,广泛的理解,在程序运行结束后内存空间会被释放,但是定义的变量、方法等,都是有「生命周期」的,一旦变量销毁了,内存也是会释放的。

在 Java 中,有垃圾自动回收机制 GC ,对于释放的或者无效的变量会自动回收,不像 C 、C++ 要手动的去释放。

数据类型的分类

基本数据类型

  • 数值型
  • 整数型:byte(-128-127)、short(15次方)、int(31次方)、long(63次方)
  • 浮点型:float(38次方)、double(308次方)
  • 在实际开发中,我们一般使用 int、double
  • 字符型
  • char:用单引号表示,Java 中使用16位的 Unicode 字符集作为编码方式,
  • 表示方式
  • 直接通过单个字符表示:'a'、‘9' 等;
  • 通过转义字符表示:'\t'、'\n'、'\r'、'\'';
  • 直接使用 unicode 表示:'\uxxxx'。
  1. 在 Java 中是没有表现多个字符的基本数据类型的,但是在 Java 中提供了一个 String 类,去表现字符串。
  2. 转义字符的使用:当你要打印无法列出的字符,比如换行符等等,要用转义字符,还有就是一些在字符串内要搞错的字符,总之是对编译器来说具有特殊意义的字符。
  • 布尔型
  • boolean:表示逻辑中的真和假,值只有 true / false。

在基本数据中,是可以进行类型之间的强制转化的,但是要注意,如果从低精度的转化为高精度时不会有问题,但是从高精度转化为低精度时,可能出现精度确实



运算符

算术运算符

+ - * / % ++ --

+ 运算符除了进行数学运算的加法之外,还可以做字符串的拼接。
++ 自增
-- 自减

实例:

int m = 10; System.out.println(m++); // 10 System.out.println(m); // 11 System.out.println(++m); // 12 System.out.println(-m); // -12

赋值运算符

= += -= \= *= %=

实例

m += 1; // m = m + 1 System.out.println(m); // 13 m -= 1; // m = m - 1 System.out.println(m); // 12

比较运算符

用于判断两个变量或者常量的大小,返回结果为 true/false。

> < <= >= == !=

左右两边的操作数只能是数值

逻辑运算符

运算符两边必须是 boolean与 && 或者 || 非 !

与:只要有一个假就是假

或者:只要有一个真就是真

三目运算符

expression ? if-true-statement : if-false-statement

实例:

int age = 16; String ageStr = age > 18 ? "成年" : "未成年"; System.out.println(ageStr); // 未成年。


流程控制


# 流程控制
  • 顺序结构
  • 判断(分支选择)结构
  • 循环结构

顺序结构

程序是一个自上而下运行的过程。

分支选择结构

Java 中的分支选择结构有 if 结构、switch 结构

if 结构

具备三种类型的结构表现形式

  • 形式一:
if (logic expression) {
    statement;
}
int age = 20;
if (age > 18) {
    String name = "Tom";
    System.out.println("我叫" + name + ",已经" + age + "岁了,我成年了!");
}
  • 形式二:
if (logic expression) {
    statement;
} else {
    statement;
}
int age = 16;
if (age > 18) {
    String name = "Tom";
    System.out.println("我叫" + name + ",已经" + age + "岁了,我成年了!");
} else {
    System.out.println("我还未成年!");
}
  • 形式三:
if (logic expression) {
    statement;
} else if (logic expression) {
    statement;
} else {
    statement;
}
if (age >= 0 && age <= 10) {
    System.out.println("少年");
} else if (age <= 18) {
    System.out.println("青少年");
} else if (age <= 30) {
    System.out.println("青年");
} else if (age <= 50) {
    System.out.println("中年");
} else {
    System.out.println("老年");
}

switch 结构

swtich 语句是由控制表达式和多个 case 标签块组成。在控制表达式中,只允许出现 byte、short、int、char四种基础数据类型,在JDK1.7以后,支持 String 类型的控制表达式。

switch (expression) {
    case condition1 : {
        statement;
        break;
    }
    case condition2 : {
        statement;
        break;
    }
    default : {
        statement;
        break;
    }

}
String color = "red";
switch (color) {
case "red": {
    System.out.println("红色");
    break;
}
case "blue": {
    System.out.println("蓝色");
    break;
}
case "green": {
    System.out.println("绿色");
    break;
}
default: {
    System.out.println("没有找到");
    break;
}
}

在 case 中要加入 break 关键字跳出;

在实际的开发中,我们一般使用 if - else 结构替代 switch。swtich 结构应用的较少。

循环结构

循环语句可以在满足循环条件的情况下,反复执行某一段代码。

被重复执行的代码叫做循环体。

循环语句可能包含的部分有:

  • 初始化语句(init_statement):一条或多条语句,这些语句用于完成一些初始化的工作。
  • 循环条件(test_expression):是一个 boolean 类型的表达式,这个表达式决定是否继续执行循环体。
  • 循环体(body_statement):如果条件允许,循环体会被反复执行。
  • 迭代语句(iteration_statement):在一次循环体执行结束后,对循环体条件进行求值,通常用于控制循环条件中的变量,使得循环在合适的时候结束。

while 结构

(init_statement);
while (test_expression) {
    body_statement;
    [iteration_statement];
}
int sum = 0;
int i = 1;

while (i <= 10) {
    sum = sum + i;
    i++;
}

System.out.println(sum); // 55

do-while 结构

(init_statement);
do {
    body_statement;
    [iteration_statement];
} while (test_expression)

无论如何都会执行一次循环体内容

int i = 1;
int sum = 0;

do {
    sum += i++;
//    sum = sum + i;
//    i = i + 1;
} while (i <= 10);

System.out.println(sum); // 11

for 循环

语法:

for ([init_statement]; test_expression; [iteration_statement]) {
    body_statement;
}

实例

int sum = 0;
for (int i = 1; i <= 28; i++) {
    sum = sum + i;
}
System.out.println(sum);

在实际的开发中,对于已知循环次数的遍历,一般使用 for 循环。而且 for 循环的应用场景要比 while 循环多。

控制循环结构

break:在循环体中,使用 break 关键字跳出整个循环。

int flag = 6;
int sum = 0;
for (int i = 1; i <= 10; i++) {
    sum = sum + i;
    if (i == flag) {
        break;
    }
}
System.out.println(sum); // 21

continue:在循环体中,使用 continue 跳出本次循环,循环还会继续执行。

int sum = 0;
for (int i = 1; i <= 10; i++) {
    if (i % 2 == 0) {
        continue;
    }
    sum = sum + i;
}
System.out.println(sum); // 25