2019/7/2 (拥有自己博客的第一天)
在此处仅记录一个小白想成为大神的学习历程,分享并写下自己从零开始学习Java的点滴.
今年5月份开始校内实训,跟着波波老师一起从头开始学习Java,直到就业,也心生了用博客这种方式来记录自己的学习生涯,也供以后工作中温故知新。
对于我来说,其实是校内的安排的实训只有 web前端 , Java后台 ,以及物联这三个方向,自己没有没有过多的了解物联网和前端这些个方面的知识,所以自然而然的选择了Java的后端技术. 紧接着的Java后台方向的人数筛选中,以30来分的成绩(满分100),反向前十,也算是进入了这个Java的学习班。
不过现在的编程语言五花八门,对于我们这种小白而言,无论先学什么,首先,先精通一门,能够解决就业问题,成为大神之后,在去学习钻研其他的语言也是很有必要的。
所以,任重而道远,加油吧!
说到Java我的第一个反应是面向对象,比c简单,没有指针,仅此而已,并没有那没多花里胡哨的,不过应该是自己孤陋寡闻,才疏学浅,所以让我们来简单认识一下Java
1.简单:他的编码风格类似与c++,但摒弃了c++中容易令程序出错的地方
2.面向对象:Java中有许多直接面向对象的方法,继承 重写等,也支持静态和动态风格的代码
3.健壮性:Java编写的程序,不会因为外部或者内部的某些因素的改变而改变
4.安全
5.一次书写,到处运行:基于Java独有的虚拟机jvm,不需要考虑你电脑的操作系统
6.结构中立跨平台
7.多线程:能够允许多个线程同时运行(但其实多线程并不能够实现一次书写到处运行)
说到Java的运行和配置就不得不说说jvm jre jdk
JVM(java virtual machine):Java的虚拟机,是其能够跨平台的关键,
JRE(java running environment): Java的运行环境
JDK(java developer kit):Java的运行工具包,需要去官网下载,并为其配置环境变量
(环境变量:
path下:jdk的bin’目录
classpath : tools.jar dt.jar)
计算机的高级编程语言类型有两种: 编译型 ,解释型。
编译型 : 编程结束后整体编译,效率高。 例如:C语言
解释型 : 实时性好,但效率不高。例如: JS
在Java中:
首先,你所编写的Java文件都是以.java后缀名结尾的java文件,然后将这些.java文件重新编译成.class文件,这样Java的虚拟机才能将其解释成其他对应的文件。
1.先编译后解释
2.编译时,按照jvm虚拟机的语法编译
3.不同的操作系统会提供给java所对应的jvm
4.Java是跨平台的,jvm是不跨平台的,
但是不同的jvm所对应的顶层标准是一样的(.java .class),所以java代码是跨平台的
不同的操作系统会给Java提供与其相匹配的jvm
提供一种系统级线程跟踪储存空间的分配情况
垃圾收集在java程序运行过程中自动执行
本质上是空间换时间,效率会地下,后台多了一个线程
这个其实有很多,下载好jdk,并配置好环境变量之后,在记事本里就能写,在cmd命令行里进行编译运行就行,当然我现阶段用的是EditPlus 和MyEclipse 8.5
不过对于初学者,还是多用记事本,或者EditPlus比较好,虽然相对比较繁琐,但是就跟咱们出行一样,不能知道能做飞机,就去哪都坐飞机,而不会走路和自行车。
程序设计大致分为两类:结构化程序设计,以及面向对象程序设计.打个不太恰当的比方,就好比造一辆汽车,前者需要做的就是把这辆车从内到外完整的组装起来,后者则只需要造个车样子就能让车跑起来,更便于维护.
由于结构化程序设计有弊端,所以提出了面向对象的程序设计思想,因为面向对象编程就比较稳定
面向对象的特点:隐藏,封装,继承,多态
注意:继承特点中,创建子类一定调用父类的构造函数,但是不会创建父类对象
对象可以理解为身边实际存在的事物,也可以称之为实例,可以说一切皆为对象,专业一点的话:对象就是事物在问题领域的抽象.
在Java中与对象离不开的就是类,类是对一类事物的抽象,用来描述一组对象可以说对象是类的实例,而类是对象的抽象.
权限名(public,abstract,protect,defect)+class+类名
主类的权限为public,只能有一个主类
其他的为默认 default
例如: public class Person(){
}
一般来说,类中的属性最好为私有(封装性,安全),方法为公有
属性的声明
访问权限+数据类型+属性名=属性值;
int a=10;
类中的变量有称之为实例变量,一般依赖于对象
方法的声明
访问权限+返回值类型+方法名+(参数签名){
//方法的实现
//返回值类型为viod时可以不用return
return 返回值参数
}
public void swap(int a;int b){
//两个数交换
b=a+b-(a=b);
}
实参:根据形参的类型,将值传递给形参,进入到方法
形参:方法名的参数签名的变量就是形参
有了这些东西之后我们再来看看Java中如何实现helloworld吧
public class HelloWorld{
public static void main(String[] args){
String s;
s="HelloWorld";
System.out.println("s="+s);
}
}
//输出
s=HelloWorld