java基础知识必备(一)
一,开发前奏
a.Java语言的发展历史。
Java语言是美国Sun公司(Stanford University Network/斯坦福大学网络公司),
在1995年推出的高级的编程语
言。所谓编程语言,是计算机的语言,人们可以使用编程语言对计算机下达命令,
让计算机完成人们需要的功能。
高级编程语言称为接近自然语言的编程语言。
高级编程语言的开发是比较简单的。
编程语言是为了帮助人类用计算机来解决存储业务问题和业务数据的。
Java是一个面向对象的高级编程语言。
Java是95年推广出来的,是由sun公司的詹姆斯.高斯林及其团队一起研发的,至今20多年了。
经历了很多的版本更新。
1995年Sun公司发布Java1.0版本
1997年发布Java 1.1版本 JDK 1.1
1998年发布Java 1.2版本
2000年发布Java 1.3版本
2002年发布Java 1.4版本
2004年发布Java 1.5版本
2006年发布Java 1.6版本
2009年Oracle甲骨文公司收购Sun公司,并于2011发布Java 1.7版本
2014年发布Java 1.8版本 (8.0)
2017年发布Java 9.0版本 (9.0)
2018年发布Java 10.0版本
Java可以做什么?
1.桌面程序。桌面游戏 ,桌面应用软件。
其实Java并不擅长做桌面应用。
桌面应用其实早就被淘汰了。
即使需要开发桌面应用也无需采用Java , 因为桌面应用用微软的技术会更快更好!!
2.WEB应用系统:
京东,淘宝,12306 金融 银行 物流业 工厂管理型的系统。
基本上大型商业应用软件90%以上都会采用Java开发。
3.可以开发移动应用: Android手机的App 。
也是一个挺大的市场。
b.java语言的特点
1.简单性 夫唯不争,故天下莫能与之争。兼容并包。
2.面向对象 : 完全用程序模拟现实事物,很容易理解。
3.分布性: Java语言可以分布在不同的操作系统上一起运行。
4.编译和解释性: Java代码是高级编程语言,他的代码已经接近人类的自然语言,
计算机底层不能直接识别这些程序,需要先编译才可以识别执行。
5.稳健性
6.安全性
7.可移植性 : 一次开发,到处使用。
8.高性能
9.动态性
c.计算机编程中的基础知识。
二进制(了解):
计算机底层都是使用二进制来存储数据的。
二进制就是: 0 , 1
计算机底层是很多的开(0)关(1)。
但是一个开关只能表示两个信息,2个开关可以表示四个信息。
3个开关可以8个信息,4个16 ,5个32 ,6个64
如果有n个开关可以表示 2^n次方个信息。
计算机底层实际上就是通过很多开关来记录信息(开关就是所谓的二进制)。
二进制转十进制的计算方式:
二进制(BIN) 十进制
00 = 0
01 = 1
10 = 2
11 = 3
11 = 1*2^0 + 1 * 2^1 = 3
100 = 0*2^0 + 0*2^1 + 1*2^2 = 4
111 = 1*2^0 + 1*2^1 + 1*2^2 = 1 + 2 + 4 = 7
101 = 1*2^0 + 0 * 2^1 + 1*2^2 = 1 + 0 + 4 = 5
在“运行”中输入calc调出计算机来帮助计算。
十进制: 0 1 2 3 4 5 6 7 8 9
十进制 二进制
7 111
9 1001 = 1*2^0 + 1*2^3 = 1 + 8 = 9
对2求余数,然后从末尾开始把余数粘起来就是二进制结果。
字节:
底层都是开关,在计算机中一个开关称为一个位,
8个开关 == 8个位 == 8b = 1个字节 = 1B.
1B = 8b
1K = 1024
1M = 1024 * 1024
1G = 1024*1024*1024
1T = 1024*1024*1024*1024
1KB = 1024B
1MB = 1024KB
1GB = 1024MB
1TB = 1024GB
计算机中所有的文件大小的最小单都是B组成的。
常用DOS命令:
最原始的计算机是没有显示器的,其实都需要程序员自己敲命令来操作计算机。
后来计算机的显示器技术普及,计算机开始流行了。
但是程序员很多时候还是要通过原始的命令去操作计算机,这些命令称为DOS命令。
首先应该调出DOS命令窗口,[][]
[][] + R键 输入“cmd”打开命令窗口
D: 切换到D盘
dir : 列出当前目录下的文件。
cd : 进入到某个目录去
.. : ..指的是上一次目录
. : .指的当前目录
cls: 清除当前屏幕
cd ../.. 往上走两级。
d.Java语言的开发环境搭建
为什么需要搭建开发环境?
只有安装了Java的开发环境才可以开发Java程序并且运行Java程序。
1.JVM(Java Virtual Machine ):Java虚拟机,简称JVM,
是运行所有Java程序的假想计算机,是Java程序的
运行环境,是Java 最具吸引力的特性之一。
我们编写的Java代码,都运行在 JVM 之上。
Java是可以跨平台,Java的代码一次编写可以在任何操作系统上运行,
根本原因是因为每个系统上都可以安装Java的虚拟机JVM。
而Java代码在JVM中运行就可以了。
JVM是Java跨平台的根本原因。
2.JRE (Java Runtime Environment) :
是Java程序的运行时环境,包含 JVM 和运行时所需要的 核心类库
JRE == JVM虚拟机 + 核心类库(sun公司提供的功能)。
核心类库是sun公司设计好的一些技术代码,我们可以直接使用这些功能。
3.JDK (Java Development Kit):
是Java程序开发工具包,包含 JRE 和开发人员使用的工具。
JDK == JRE + Java程序开发工具包。
Java程序开发工具包 : 必须有这些包,我们才可以看我们的代码是否写对了。
可以帮助我们编译代码。
-- 我们想要运行一个已有的Java程序,那么只需安装 JRE 即可。
-- 我们想要开发一个全新的Java程序,那么必须安装 JDK 。
程序员只要安装了JDK,就有了运行Java程序的虚拟机JVM ,以及核心类库(sun公司提供的功能)
以及Java程序开发工具包(检测代码是否正确,编译代码)
所以Java的产品是:JDK。
e.安装JDK
技术人员的软件应该全部去官方网站下载。
官网的软件是最干净最安全最好的。
(1)双击JDK
(2)不要安装公共JRE
(3)安装目录不应该包含中文和空格目录。
计算机对中文和空格目录是很敏感的
以后与其他技术结合的时候可能出现错误。
例如:D:\soft\java\jdk-9.0.1
(4)配置环境变量。
安装了JDK,其实操作系统并不知道JDK安装了
也不知道装到了哪里去了。
配置环境变量的目的就是告诉操作系统
JDK安装到了哪里去了。
配置一个JAVA_HOME的环境变量,告诉操作系统
JDK安装到了哪里去了。
右键“我的电脑”-“属性”->环境变量”
JAVA_HOME : D:\soft\java\jdk-9.0.1
配置一个PATH环境变量,告诉操作系统
Java的命令安装在哪里:
PATH : D:\soft\java\jdk-9.0.1\bin
(5)检测是否安装无误
打开cmd,输入“java”看是否有提示
输入“java -version”看版本是否正确。
f.开发第一个Java程序。 (HelleWorld).
用什么来开发Java程序呢?
开发工具: 记事本
集成工具(IDE工具):eclipse , MyEclipse , Intelij IDEA
前几天学习用记事本,先习惯自己去找错误,以及写代码的感觉。
后面永远都是用IDE工具,最牛逼的工具:Intelij IDEA
(1)新建一个代码文件叫 HelloWorld.java
public class HelloWorld{
// 程序的入口代码
public static void main(String[] args){
System.out.println("欢迎加入Java世界,牛逼的你即将诞生!");
}
}
(2)使用Java开发工具中提供的javac.exe命令对代码进行编译。
编译:
javac HelloWorld.java -> HelloWorld.class文件(这个是计算机可以执行和识别的文件)
执行:
java HelloWorld
编译(javac):是指将我们编写的Java源文件翻译成JVM认识的class文件,
在这个过程中, javac 编译器会检查我们
所写的程序是否有错误,有错误就会提示出来,如果没有错误就会编译成功。
运行(java):是指将 class文件 交给JVM去运行,
此时JVM就会去执行我们编写的程序了。
必须先编译代码才可以执行代码。
g.Notepad++软件的安装和配置
用它来写代码和笔记。
java基础知识必备(一)的更多相关文章
- 学习android学习必备的java基础知识--四大内部类
学习android必备的java基础知识--四大内部类 今天学习android课程,因为我的主专业是JAVA,但是兴趣班却有这其他专业的同学,学习android 需要具备一些java的基础知识,因此就 ...
- 主题:学习Spring必学的Java基础知识(9)----HTTP报文
转: 引述要学习Spring框架的技术内幕,必须事先掌握一些基本的Java知识,正所谓“登高必自卑,涉远必自迩”.以下几项Java知识和Spring框架息息相关,不可不学(我将通过一个系列分别介绍这些 ...
- Java基础知识(壹)
写在前面的话 这篇博客,是很早之前自己的学习Java基础知识的,所记录的内容,仅仅是当时学习的一个总结随笔.现在分享出来,希望能帮助大家,如有不足的,希望大家支出. 后续会继续分享基础知识手记.希望能 ...
- java基础知识小总结【转】
java基础知识小总结 在一个独立的原始程序里,只能有一个 public 类,却可以有许多 non-public 类.此外,若是在一个 Java 程序中没有一个类是 public,那么该 Java 程 ...
- Java基础知识系列——String
最近晚上没有什么事(主要是不加班有单身),就复习了一下Java的基础知识.我复习Java基础知识主要是依据Java API和The Java™ Tutorials. 今天是第一篇,复习了一下Strin ...
- JAVA基础知识之网络编程——-网络基础(Java的http get和post请求,多线程下载)
本文主要介绍java.net下为网络编程提供的一些基础包,InetAddress代表一个IP协议对象,可以用来获取IP地址,Host name之类的信息.URL和URLConnect可以用来访问web ...
- java基础知识梳理
java基础知识梳理 1 基本数据类型
- java基础知识回顾之---java String final类普通方法
辞职了,最近一段时间在找工作,把在大二的时候学习java基础知识回顾下,拿出来跟大家分享,如果有问题,欢迎大家的指正. /* * 按照面向对象的思想对字符串进行功能分类. * ...
- Java 基础知识(一)
Java基础知识篇: 一.关键字解释 1. final:修饰非抽象类,非抽象方法和属性, 以及修饰方法参数,代表“无法改变的”.出于对设计或者效率的考虑使用该关键字. final类无法被继承,fina ...
随机推荐
- grub密码
[root@lnmp ~]# grub-md5-cryptPassword: Retype password: $1$k9fQ//$Fh3/O8i3.9dw4zarIHtIx1 [root@lnmp ...
- 阿里云部署Redis服务器远程连接问题
昨天在阿里云免费领了一个月的云服务器,就着最近学的SpringBoot,准备做一个SpringBoot与Redis的整合. 因为以前用的Redis都是安装在本地的,使用过程中没遇到什么大问题,可是一旦 ...
- 高并发 Nginx+Lua OpenResty系列(3)——模块指令
Nginx Lua 模块指令 Nginx共11个处理阶段,而相应的处理阶段是可以做插入式处理,即可插拔式架构:另外指令可以在http.server.server if.location.locatio ...
- 跟我学SpringCloud | 第一篇:介绍
首先讲一下我为什么要写这一系列的文章,现在网上大量的springcloud相关的文章,使用的springboot和springcloud的版本都相对比较老,很多还是在使用springboot1.x的版 ...
- vsphere网络
物理网络 物理机间建立的网络,VMware ESXi运行于物理机之上 虚拟网络 单台物理机上运行的虚拟机之间通信形成的逻辑网络. 一.网络概述 1. 物理以太网交换机 2.vSphere标准交换机 虚 ...
- 【转载】JDK自带的log工具
版权声明:本文为Jaiky_杰哥原创,转载请注明出处.This blog is written by Jaiky, reproduced please indicate. https://blog.c ...
- Codeforces Round #567 (Div. 2)A
A. Chunga-Changa 题目链接:http://codeforces.com/contest/1181/problem/A 题目 Soon after the Chunga-Changa i ...
- JIRA7.10迁移
1.准备环境 系统环境:Centos7.3 防火墙和Selinux管闭 [root@localhost ~]# useradd jira [root@localhost ~]# yum instal ...
- Oracle基础学习笔记
Oracle基础学习笔记 最近找到一份实习工作,有点头疼的是,有阶段性考核,这...,实际想想看,大学期间只学过数据库原理,并没有针对某一数据库管理系统而系统的学习,这正好是一个机会,于是乎用了三天时 ...
- CentOS 常用命令合集
tail -f ../logs/catalina.out 在Tomcat中的bin目录下查看Tomcat日志 ps -ef|grep java 查看Tomcat服 ...