java 基础知识

java 基础知识,第1张

java
    • 运行环境
    • 虚拟机:它将字节码文件翻译成各个系统对应的机器码
    • JDK:Java 开发工具包
    • javac 负责编译
    • web服务
    • 解释性和编译性
    • 硬盘和内存
  • 变量
    • 基本类型
    • 变量常见错误
  • 类型转换
    • 数组
    • 字符串
    • 比较
    • 函数
    • 函数重载
    • new 构造函数
  • http协议
  • MVC
  • 模块
  • 封装
  • 继承
  • 集合
  • 多态
  • 设置端口号
  • 注释
  • java @....
  • MySQL
    • Sql语句:结构化查询语言
      • 创建数据库:creat database aaa
      • 链接数据库 use bookms
    • 添加
    • 查询
    • 删除
    • 修改
    • 排序
    • 现定条数
    • 表连接
  • 时间

运行环境
  |环境

-------- | -----
js | 浏览器
c语言 | window
java | java虚拟机

虚拟机:它将字节码文件翻译成各个系统对应的机器码 JDK:Java 开发工具包

JDK 是 Java Development ToolKit 的简称,也就是 Java 开发工具包。JDK 是整个 Java 的核心,包括 Java 运行环境,Java 工具,Java 基础类库)。

javac 负责编译 web服务
项目Value
apache ,ngixhtml(前端)
Tomcatjava+html(后端)
iisc#+html

web服务就是通过软件提供网上信息浏览服务
Html 服务:是web服务 需要运行起来通过四个软件
Java 服务:web服务 是Tomcat:java+html (后端)

解释性和编译性

编译性语言:java c c#(一次性先翻译)发现错误就不执行了(JDK)
解释性语言:js python(逐行翻译)翻译到哪执行到那
Javac负责编译(变成机器语言) java执行
Java是面向对象编程语言

硬盘和内存

硬盘:只用于存储,容量大,断电数据不丢失的特点
内存:看到的东西,听到的都是存储在内存的,断电后数据丢失
(打开一个ppt,看到的ppt图标是内存的,当双击打开的时候就会从硬盘调取到内存中,占据一定内存)

变量

什么是变量 为什么需要变量
1.传递参数,替代某个数 (如函数传参)
2.方便记忆,存储数据
3.为什么有那么多变量,让电脑计算更快

基本类型

基本类型:整数,浮点数,字符,布尔(不包含字符串string)

整数Value
byte1个字节 (0-127)(正负一共256个)
short2个字节 (0-3万多)
int(integer)4个字节
long8个字节(超过10位)
浮点数Value
float4个字节 (小数点的位数少)
double8个字节(小数点位数多,准确度是float的两倍)

注意:float f1=1.9F; 所以基本使用double

布尔Value
    Boolean|1个字节
字符Value
    char|2个字节 (可以数值类型也可以非数值)(97等于a) char c1=’a’;     char c2=99;
变量常见错误

常见的错误:
1.变量先定义,后使用
2.区分大小写
3.变量声明未赋值,先赋值后使用
4.数据类型不匹配
Incompatible types.不恰当的类型
Required: short 需要的short
Found: java.lang.String 提供的是string
变量的声明需要注意:
1.区分大小写
2.数字,字母,_,$组成(数字不能开头)
3.不能使用关键字,保留字
4.小写字母开头 驼峰

类型转换

自动转化:近亲都是整数,小转大
byte b1=100;
int i1=b1
强制转换:近亲,大转小(能装下的转换,才有意义)
int num1=100;
​ short num2=(short)num1;

字符串转数值Integer.valueOf( )

数组
类型[]  数组名(变量名)=new 类型[数组长度]
char[] list=new char[5]
类型[]  数组名(变量名)=new 类型[]{值,值,值}
int[] list=new int[]{1,2,3}
int[] list={1,2,3}
(不能随便更改长度)
数组名[0]=和数组类型对应的值
int[] list=new int[5]
list[0]=100;
list[1]=200
字符串

类型 变量=new 类型(值)
(除了8大基本类型,其他都可用new)

String str1=”abc”;
String str2=”abc”;(abc就一个。str2,1共同管理)
String str=new String(“abc”)(从新创建一个abc)
比较

比较位置/地址:==
比较内容 :字符串1.equals(字符串2)

函数
public          static        void               main      (String[] args) {   return       }
修饰符        静态    返回值类型        函数名  (参数类型 参数){ return}

public(谁都可以调用)/private

三个一致:返回值类型,函数调用接受者,和return类型一致

通过变量,声明一个变量存储
//        String str=new String("abc");
//        Scanner sc=new Scanner(System.in);
//        System.out.print("请输入姓名:");
//        String name= sc.next();//从客户端,控制台读入一个字符串
//        System.out.println("你的姓名:"+name);

函数重载

函数重载:(函数名相同,参数个数不同,参数类型不同,顺序不同)
常见重载错误:
1.类型相同的情况顺序不同
2.仅参数名称不同
3.仅返回值不同

new 构造函数

构造函数的作用:就是为了构造对象而生,和new配合使用,给必要的属性赋初始值;

public Book(){}
Book b=new Book();

1.一般是public
2.返回值类型不写 void也不写
3.函数名和类名一样
4.可以多重载(无参,一个,两个参数)

注意:1.系统会默认提供一个默认的无参构造函数
2.一旦自己创建构造函数,系统就收回默认的构造函数
3.{ }提供了构造函数的方法,系统帮我们实现

http协议

http协议
1.联网获得ip
2.把网站放到web服务里,(apache,nignx服务器实现了http协议
浏览器实现了http协议)
3.启动服务(软件运行就有端口号,服务可用)
http://ip:port/url
http是一种规则,传递数据,img,html等的规则

用户也要有软件实现了http协议才能访问你的网站
因为有http协议才能看到网页,http是一种传输规则,页面放到web服务里,浏览器接收消息的
http
1.搭建基础设施:烽火台
2.创建信号(接口信号) :点火信号
3.信号处理

MVC

M:数据模型,处理数据(增删改查)
V:视图
C:控制和视图进行数据通信的java(接收信号,交给业务)

模块

.controller :链接前后端
.service :处理数据
.pojo :存储和传输(属性)

封装

封装:将属性私有化,对外提供公开接口

继承
pubic class 子类 extends 父类{
}


Father fa=new Son()
fa.eat()

两个现象:
1.父类变量可以指向子类对象,但是该变量只能 *** 作父类变量和子类变量共同存在的成员不能 *** 作子类特有的成员
2.子类拥有和父类相同的方法,发生覆盖摘要是调用子类对象的该方法,无论是父类变量还是子类变量,都是结果执行子类重写的方法
父类:AnimalServic 子类:CatService
父类:AnimalServic ans=new CatService();

集合
ArrayList<引用类型/包装类型> list=new ArrayList<>();
import java.util.ArrayList;

 ArrayList list =new ArrayList<>();
  		 list.add("4");//插入末尾
        list.add(1,"5");//插入指定位置
        System.out.println(list.get(1));//获取

集合和数组的区别:数组长度固定,

多态

继承子类的组成:1.父类的所有 2.自己独有的 3.发展父类原有成员
多态:以继承为前提 ,子类覆盖父类的方法,父类变量指向不同的子类对象调用该方法,实现不同效果(执行相应子类的方法)
继承:父类和子类
接口:接口和子类(父类就是接口,子类是接口的后代)
写法 接口:interface //所有方法都是抽象方法,为了多态,不用写方法内容,但必须存在
继承:class
继承:子类名 extends 父类名
接口:子类名 implements 接口名

设置端口号
server.port=8080
#设置端口号 如果8080被占用了就更改端口号
注释

单行//
多行/* /
文档级/
* */

java @…

MySQL

数据库:不只是文件库,而是数据库管理系统,是个软件,和系统连接,每家数据库都提供一套连接数据的方法----驱动

Sql语句:结构化查询语言 创建数据库:creat database aaa 链接数据库 use bookms 添加
insert into 表名( 属性名,属性名)  values(值,值)

查询
select * from 表名 
* :代表全部
select id  from 表名 where name='a' 
多个条件用and隔开

删除
delete from 表名 where id=1

修改
update 表名 set 属性=值,属性=值 where id=1

排序
order by 字段 desc降序/(asc)升序
select * from 表名 order by 字段 desc
select * from student where collage=’计算机’ order by score asc, order by asc
现定条数
select * from student order by score asc limit 3
表连接
两个表直接的值要有一个相等
select * from product,category where product.catagoryid=category.id and product.id=1
时间

date:年-月-日 2002-09-09
time:时-分-秒
datetime: 日期加时间 2002-09-09 02:45:34
时间戳

where ctime>'2022-02-23 09:20:23'

select * from user 
where dltime>'2022-02-23 09:20:23'
and dltime<'2022-02-23 10:20:23'

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/758063.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-01
下一篇 2022-05-01

发表评论

登录后才能评论

评论列表(0条)

保存