一.java之父
Java之父:詹姆斯高斯林 Sun公司
Sun公司
- 推出Java jdk8.0~jdk17
- Solaris操作系统
二.java的优势
1.跨平台
平台是什么?
常用的计算机平台 Windows Unix Linux 其他的 Solaris 由Sun公司出品
在不同的操作系统上都可以运行 linux Windows Unix
什么是跨平台?
用java开发的平台不受底层操作系统的限制,可以运行在任意的操作系统上
跨平台的功臣 JVM (java虚拟机软件)
举例 出国谈项目用到的人员
翻译员=命令解析执行器 .java转成.class 文件
秘书=java类加载器 加载.class文件为二进制文件
保镖=字节码校验器 检验语法错误 失败则不会生成.class文件
编译 ctrl+1 编译后成为.class文件 javac
运行 ctrl+2 加载.class文件 转化成0 1 代码 类加载器 如果没有错误就运行出结果
2.安全健壮性
2.1安全
1.少指针 弱化指针 使用引用
2.多异常 运行时发生异常 中断程序
3.多自动垃圾回收
可以自动回收未使用的内存 不需要手动回收(其他语言析构函数 分配+回收)
java只考虑分配 通过gc 详细一点为 线程
2.2健壮
考虑全面
3.免费开源
java 1991年首次开源 1995年再次开源
4.简单
4.1语法简单
有人说是c++中的--,取其精华去其糟粕,没有复杂的重载 +-*/
例如 +,
算数加法 ‘a’+3 = 100
追加连接 "abc"+100="abc100"
4.2思想简单
类比于其他的语言 c语言是面向过程的,主要是解决问题的步骤,人站在计算机的角度考虑问题
而java主要是面向对象,java模拟现实生活
例如木匠制作椅子,c语言是 椅子是怎么一步一步做出来的,而java是 注重椅子的属性和作用
5.动态更新
三、注释
//单行注释
/*
多行注释
*/
/**
文档注释
*/
四、基础代码详解
public class Text1{
public static void main(String[] args){
System.out.println("HelloWorld");
}
}
1.public访问权限修饰符中的公共 修饰符 修饰符有4个以后再说
2.class为类 表示一个群体需要class修饰
3.Text1为类名称 最好具有表意性
例如
修饰一个学生群体 class student{}
修饰一个老师群体 class Teacher{}
注意:一个java文件只有一个访问修饰限定符修饰class 如果有多个 剩下的不需要写public 直接 class 类名{}即可
下面不是空格是由Tab出来的
public class Text1{
public static void main(String[] args){
System.out.println("HelloWorld");
}
}
class Student{
//无需在家修饰限定符 默认为 default
//当然类是要平行的 先不要包含在上面的类里面 不然内部类了
}
4.void是没有返回类型的
返回类型是指:当完成以后返回数据所需要返回的类型
目前学到的返回类型有int String
例如
你叫什么名字??张三
public String 问答(){};
你多大了?18
public int 问答(){};
吃饭去吧(没有返回类型)
public void 问答(){};
main方法很重要,是程序的入口
(方法参数) 方法参数:方法执行的时候 需要传递进去的数据
public 返回类型 带饭(方法参数 ){}
public String 带饭(int money){}
{} 方法体 执行逻辑
定义一个方法
修饰符 返回类型 方法名(方法参数){方法体}
System 系统类型 .的 java中的调用. out标准输出流对象 .的
println print[打印】+ln[换行] ; 语句的结束
总结:
[定义一个类:访问权限修饰符 class 类名{}]
public class Test1{}
[定义一个方法的方法 修饰符 返回类型 方法名(方法参数){方法体}]
Public String daifan(int money){ };
[方法参数 由 方法类型 方法名组成 方法名不是很重要]
重点介绍面向对象
面向对象的组成 类 对象 引用 属性 方法
类:
一组类型相同的群体集合【例如学生 老师】
对象:
是类中的实例化个例 例如 Student stu=new Student();
类比对象的范围大,
例如 学生 张三【类 对象】、hellokitty 猫【对象 类】、猫 动物【对象 类】
引用:
Studnet stu=new Student() stu就是对new Student()类的引用
属性:
是指对象类有什么 是n 名词
方法:
是指对象类可以做什么 v 是动词
简单的长方形求周长面积
public class Rect{
public static void main(String[] args){
ChangFangXing rect1=new ChangFangXing();
rect1.length=10;
rect1.width=8;
rect1.求面积();
rect1.求周长();
}
}
//类 名称
class ChangFangXing{
//属性
int length;//长
int width;//宽
//方法 修饰符+返回类型+方法名(方法参数){}
//求面积
public void 求面积(){
System.out.println("长方形的面积:"+length*width);
}
//求周长
public void 求周长(){
System.out.println("长方形的周长:"+(length+width)*2);
}
}