java基础

Java语言的特点

  1. 面向对象(封装、继承、多态)
  2. 可靠性
  3. 安全性
  4. 支持多线程
  5. 编译与解释并存

封装、继承、多态的好处

封装
封装把一个对象的属性私有化,同时提供一些可以被外界访问的属性的方法,保证数据的安全性和可用性。

继承
通过使用继承我们能够非常方便地复用以前的代码。

多态
提高了程序的扩展性和可维护性。

java运行环境的安装

  1. 创建系统变量JAVA_HOME,变量值是按照jdk的路径D:\java\jdk
  2. 创建系统变量CLASSPATH,变量值:.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;
  3. 配置path系统变量。变量值:%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;
  4. 打开命令窗口,输入java -version指令.
    输入java -version指令后的效果

java运行流程

  1. 创建.java为后缀的文件
  2. 把编写好的文件放到对应的目录下面,打开dos命令窗口
  3. 通过javac指令,把.java文件编译成为.class文件
  4. 通过java指令把编译后的.class文件运行(使用时不带文件后缀名)

Java的规范要求

  1. java代码是有层级关系,缩进区分层级关系
  2. 符号是成对出现,先敲成对出现的符号,在敲里面的内容(容易出错的地方)
  3. 符号都是英文模式,除了””内部可以有中文
  4. Java程序写完一句话,一点注意加上英文符号 ;

基础知识

输出语句

System.out.print("输出的内容");//不换行

System.out.println("输出的内容");//换行

Scanner类
1.使用的时候需要导入java.util包。

import java.util.*;

2.用new在内存中实例化一个Scanner出来

Scanner s = new Scanner(System.in);

3.使用

 Scanner s = new Scanner(System.in);
        System.out.println("你最爱的动物是什么?");
        String name = s.next();
        System.out.println("你最爱的动物是:"+name);

next() ~ 字符串

nextInt() ~ 整型

nextDouble() ~ 浮点数

注释

单行注释

//System.out.print("输出的内容");

多行注释

/*System.out.print("输出的内容");
System.out.print("输出的内容");
System.out.print("输出的内容");
System.out.print("输出的内容");*/

文档注释

/**

*/

报错

  1. 语法错误,开发工具会直接提示,根据提示改错
  2. 写错方法,语法不报错,运行的时候在控制台报错,并给出提示

易错点

  1. 语法结构不能修改
  2. Java对大小写敏感,大小写得注意
  3. public修饰的类的名称必须与Java文件同名
  4. Java程序写完一句话,一点注意加上英文符号 ;

变量

在这里插入图片描述
!!!注意先声明在赋值!!!
声明变量的两种方法
1.

String name;
name="张三";
String name="张三";

变量名命名规范
首字母只能以字母,下划线“_”,"$"符号

其他部分可以是字母,下划线“_”,"$"符号,数字

数据类型

常用的数据类型:

char//(字符型)用于存储单个字符串
int//(整型)用于存储整数
double//(双精度)用于存储小数
String//(字符串)用于存储一组字符串

运算符

=
把=右边的变量赋值给左边的变量

算术运算符
+ - * /

% :取余(求余数):求现在两个数除了之后的余数

类型转换

自动类型转换:把小范围的变量赋值给大范围的变量

强制类型转换:把大范围的变量赋值给小范围的变量

关系运算符

><==!=>=<=

结果只能是boolean类型:true(真)或者false(假)

重载和重写的区别

重载: 发生在同一个类中,方法名必须相同,参数类型不同、个数不同、顺序不同,方法返回值和访问修饰符可以不同。
重写: 发生在父子类中,方法名、参数列表必须相同,返回值范围小于等于父类访问修饰符范围大于等于父类;如果父类方法访问修饰符为 private 则子类就不能重写该方法。

自动装箱与拆箱

装箱:将基本类型用它们对应的引用类型包装起来;
拆箱:将包装类型转换为基本数据类型;

== 与 equals

==:它的作用是判断两个对象的地址是不是相等。
equals() : 它的作用是判断两个对象是否相等。

选择结构

If选择结构
在这里插入图片描述
If-else选择结构
在这里插入图片描述
f-else --if选择结构

//语法结构:
If(条件1){
代码块1

}else if(条件2){
代码块2

}else if(…N){
代码块N

}else{
如果上面的条件都为false执行最后的else中的代码

}

Switch选择结构
在这里插入图片描述
在case语句运行完毕可以不加break;
挨个运行case块,在遇到break后停止,如都没写break,会挨个把所有的都运行一遍

基本if选择结构: 处理单一或组合条件的情况

if-else选择结构:处理简单的条件分支情况

多重if选择结构:处理复杂的条件分支情况

嵌套if选择结构:用于较为复杂的流程控制

switch选择结构:多重分支并且条件判断是等值判断的情况

循环

While循环
在这里插入图片描述

Do-while循环
在这里插入图片描述
For循环
在这里插入图片描述
Break关键字
在循环中使用,作用:终止循环
在这里插入图片描述
Continue关键字:只能在循环中使用
跳过当轮循环,直接运行下一轮循环

数组

在这里插入图片描述
数组的基本要素:

  1. 标识符:数组名
  2. 数组元素:数组中的值
  3. 元素下标:元素编号
  4. 元素类型:数组能存放的数据类型

类和对象


根据对象的共有属性和方法抽离出来

对象
静态特征:基本属性

属性:对象具有的各种特征

动态特征:行为习惯

类是个概念,是抽象的

对象:是看得见摸得着的实体
类是对象的类型
对象是类的实体

创建类

public class 类名{
属性

方法

}

创建对象

类名 对象名=new 类名();

Int a=值;

使用:.操作符

对象名.属性=值;//给属性赋值

对象名.属性;//获取属性的值

对象名.方法();

局部变量和成员变量

放在类中的变量,就是成员变量

放在方法中的变量,就是局部变量

成员变量的作用域:在整个类中

局部变量的作用域:在当前声明的{ }内部

成员变量有初始值,局部变量没有

无参方法

方法的构成:返回值类型 方法名 参数列表 方法体

 public 返回值类型 方法名(){
​ 方法的主体
​ }

有返回值:必须给return 类型(返回值类型是什么就返回什么值类型的数据);

带参方法

方法组成:访问控制修饰符,返回值类型,方法名,参数列表,方法体

 public 返回值类型 方法名(int a,String name){
​ 方法的主体
​ }

String类

  1. String字符串定义之后不能修改
  2. String类是final修饰的
  3. 当创建一个字符串值为aaa,再次创建一个字符串也为aaa的时候,在String的内存空间中只会创建一份aaa创建字符串的时候,String会拿这个值到内存中去判断有没有,有就直接指向这个地址,没有创建这个内存空间。

计算字符串的长度
Int count=字符串.length();

  1. 字符串中空格也算一个字符
  2. Length()方法返回一个int类型结果,字符串长度

连接字符串
第一种:+拼接

第二中:concat()方法

字符串A.concat(字符串B);

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值