1.对象的一切行为和动作都是自己去执行的
属性:这里主要强调模板属性,能够提供特别信息和功能的组件。
举个小例子:
1.1对象的属性理解:一只小狗,他的四肢,嘴都可以称为他的属性或者组件。
1.2对象的方法:也就是小狗的动作,吃喝拉撒,都可以理解为他的动作,动作也就是方法。
**属性基本八种基本数据类型:byte、short、int、long、float、double、boolean、char**
int(整型)
Long(长整型)
float (浮点型)
double (数值浮点型)
char (单个字符型)
byte (整型 字节)
short (整型)
boolean (布尔型)
属性的命名方式
自定义——驼峰命名格式,首字母小写
如:cName…
对象方法
自定义——驼峰命名格式,首字母小写
特点:
返回值—— 一个方法执行之后要返回信息,将信息存进变量中,提供这个有值的变量,供其他地方使用
方法名称——驼峰命名,首字母小写
方法参数——自定义传不传参数,传多少个,传的类型,传递的对象的顺序
变量:
什么是变量:
变量的定义:用来命名一个数据的标识符 如:int a=4 ,这是一个int型的变量
变量的分类:
全局变量
局部变量
**全局变量 如**:
`class Story{
private name;
private int id;
private double sex;
}`
生成相应的get,set,即可在本类当中调用。
局部变量 如:
void demo1() {
// 控制台输入
Scanner sc = new Scanner(System.in);
// 敌方英雄随机数
Random ran = new Random();
// 血量随机数
Random r = new Random();
// 我方输入随机5个英雄
for (int i = 0; i < arr1.length; i++) {
System.out.println("输入英雄:");
// 血量
int hp = r.nextInt(500);
// 输入数值范围确定英雄那一路
int hero = sc.nextInt();
if (hero < 20) {
System.out.println("我是上路" + "血量是:" + hp);
} else if (hero > 21 && hero < 40) {
System.out.println("我是打野," + "血量是:" + hp);
} else if (hero > 41 && hero < 60) {
System.out.println("我是中单" + "血量是:" + hp);
} else if (hero > 61 && hero < 80) {
System.out.println("我是ad" + "血量是:" + hp);
} else if (hero > 81 && hero < 100) {
System.out.println("我是辅助" + "血量是:" + hp);
}
arr1[i] = hero;
}
方法内部的即为局部变量
原码,补码,反码
计算机所有的运算都是补码层面进行运算,原码层面进行呈现
正数:原码,反码,补码组成内容一样
负数:原码,反码:原码符号位不变,其他位取反,补码+1
案例:
十进制+1
原码:0-0000001
反码:0-0000001
补码:0-0000001
十进制-1
原码:1-0000001
反码:1-1111110
补码:1-1111111
特别的值:
0-0000000:0
1-0000000:-128—》规定这个就是-128
最大值:127:0-1111111
Byte:-128~127
字面量
字面量=字面值
如:
int a=4
a就是它的值
整数字面值
long val=26L;//以L结尾代表long型
int decVal=26;//默认常数就是int
int hexVal=0x32;//16进制--十进制50
int oxVal=032;//8进制--十进制26
int binVal=0b1101011;//二进制写法--十进制107
浮点型字面量
float f1=1234.1F;//以F结尾的字面量表示浮点型
double d1=123.3;
double d2=1.2e2;//科学计数法 1.2e2--120--en 10^n
字符和字符串字面量
String name="啦啦";
char a='拿';
转义字符
char tab='\t';
char enter='\r';//回车
char newline='\n';//换行
char doubleq='\"';//双引号
char singleq='\'';//字符类型单引号
char backslash='\\';
类型命名规则
变量名称只能用 字母,数字,$ _
变量名第一个字母不能使用数字
作用域
一个大括号就是一个作用域
如:
{
}
参数
如果一个变量,是声明在一个方法上,就叫做参数
参数的作用域是该方法内所有的代码——{}包含的
其他方法和类中的其他位置,都是不可以访问这个参数的
final
final修饰的类与方法,均不可以被继承与修改
表达式
; ; ;//以分号结尾的便是一个表达式,这里是三个表达式
代码块
{
大阔号是作用域也是代码块
package com.xz.king;
import java.util.Random;
import java.util.Scanner;
public class KingGame {
public static void main(String[] args) {
My m = new My();
m.demo1();
PK p=new PK();
p.pkmethod();
}
}
}
操作符
1, 算术操作符
2, 关系操作符
3, 逻辑操作符
4, 位移操作符
5, 赋值操作符
6, 三元操作符
算术操作符
+ - * / % ++ –
a++,先做()中a的呈现,再在括号外做自增1 ++a
++a,先自增1,然后再做呈现(参与运算)
关系操作符
关系操作符生成的是一个Boolean结果
关系操作符包括(<、>、<=、>=、==、!=)
逻辑操作符
&&(短路与)、&(与)、||(短路或)、|(非短路或)
位移操作符
在二进制层面,对二进制位进行移动和取舍操作,强调,所有的位移操作都是补码层面上进行的
<< : 左移运算符
>> : 右移运算符
>>> : 右移运算符
赋值操作符
= != 》= 《=》 ==
三元操作符
System.out.println(1>2?true:false);
System.out.println(1>2?false:true);
控制流程(选择语句+循环)
1, if语句
2, switch
3, while,do while
4, for,增强for循环(foreach)
5, continue,break
if语句
boolean flag=true;
if(flag) {
System.out.println("嘎嘎嘎");
}
If else
int score=60;
if(score>90) {
System.out.println("A");
}else {
System.out.println("B");
}
else if
int score=80;
if(score>90) {
System.out.println("A");
}else if(score>80&&score<=90){
System.out.println("B");
}else if(score>70&&score<=80) {
System.out.println("C");
}else {
System.out.println("D");
}
int score=99;
if(score>80) {
System.out.println("B");
}else if(score>90){
System.out.println("A");
}
switch
char level = 'C';
switch (level) {
case 'A':
System.out.println("90-100");
continue//跳过当次循环
break;//终止当前循环
case 'B':
System.out.println("80-90");
break;
default:
System.out.println("80以下");
break;
}