Day01Java基础入门讲解

1.什么是JAVA

Java 本身是一种面向对象的语言,最显著的特性有两个方面,一是所谓的“书写一次,到处运行”,能够非常容易地获得跨平台能力;另外就是垃圾收集,Java通过垃圾收集器回收分配内存,大部分情况下,程序员不需要自己操心内存的分配和回收。 我们日常会接触到JRE或者 JDK。 JRE,也就是Java 运行环境,包含了 JVM 和 Java 类库,以及一些模块等。而 JDK 可以看作是 JRE 的一个超集,提供了更多工具,比如编译器、各种诊断工具等。 对于“Java 是解释执行”这句话,这个说法不太准确。我们开发的 Java的源代码,首先通过 Javac 编译成为字节码(bytecode),然后,在运行时,通过 Java虚拟机(JVM)内嵌的解释器将字节码转换成为最终的机器码。但是常见的 JVM,比如我们大多数情况使用的 Oracle JDK 提供的 Hotspot JVM,都提供了 JIT(Just-In-Time)编译器,也就是通常所说的动态编译器,JIT能够在运行时将热点代码编译成机器码,这种情况下部分热点代码就属于编译执行,而不是解释执行了。

1.1 知识扩展

JVM 的一些基础概念和机制,比如 Java 的类加载机制,常用版本 JDK(如 JDK 8)内嵌的 Class-Loader,例如 Bootstrap、 Application 和 Extension Class-loader;类加载大致过程:加载、验证、链接、初始化;自定义 Class-Loader 等。还有垃圾收集的基本原理,最常见的垃圾收集器,如 SerialGC、Parallel GC、 CMS、 G1 等。
当然还有 JDK 包含哪些工具或者 Java 领域内其他工具等,如编译器、运行时环境、安全工具、诊断和监控工具等。这些基本工具是日常工作效率的保证,对于我们工作在其他语言平台上,同样有所帮助,很多都是触类旁通的。
众所周知,我们通常把 Java 分为编译期和运行时。这里说的 Java 的编译和 C/C++ 是有着不同的意义的,Javac 的编译,编译 Java 源码生成“.class”文件里面实际是字节码,而不是可以直接执行的机器码。Java 通过字节码和 Java 虚拟机(JVM)这种跨平台的抽象,屏蔽了操作系统和硬件的细节,这也是实现“一次编译,到处执行”的基础。

2.什么是SVN?什么是TortoiseSVN?

Subversion是一个开源的版本控制系统, 也就是说 Subversion 管理着随时间改变的数据。 这些数据放置在一个中央资料档案库(repository) 中。 这个档案库很像一个普通的文件服务器, 不过它会记住每一次文件的变动。 这样你就可以把档案恢复到旧的版本, 或是浏览文件的变动历史。

SVN 的一些概念

repository(源代码库):源代码统一存放的地方 Checkout(提取):当你手上没有源代码的时候,你需要从 repository
checkout 一份 Commit(提交):当你已经修改了代码,你就需要Commit到repository Update
(更新):当你已经 checkout 了一份源代码, update
一下你就可以和Repository上的源代码同步,你手上的代码就会有最新的变更

TortoiseSVN是Apache™Subversion®版本控制系统的免费开源Windows客户端。

2.1 TortoiseSVN的基本操作

2.1.1创建SVN Repository(版本库)

先创建一个空文件夹、按下鼠标右键后,选择TortoiseSVN->Create repository here。
在这里插入图片描述
在这里插入图片描述

2.1.2 创建Work目录

所谓的Working目录其实就是平常用来存放工作档案的地方。通常我们会等到自己的工作做的一个段落的时候再进行备份。所以我们平常都是在 Working目录下面工作,等到适当时机在commit到repository中。
在这里插入图片描述
在这里插入图片描述
后面就是添加,提交,更新,查看日志这些操作

4. Git

Git和SVN都是版本控制系统。不同的是Git是一个分布式版本控制系统。而SVN是集中式的版本控制系统。

4.3Git的基本操作

4.3.1创建版本库

git init

4.3.2添加文件

新建一个text.txt。第一步在gitbash中输入git add text.txt。
git add . 添加全部文件
第二步在gitbash中输入git commit -m“comment”
或者直接输入git commit 在vim中给打上注释

4.3.3查看状态

git status

4.3.4回退

注意!以下下操作都是在还未push到远程仓库的情况进行的。

1.撤销本地commit

git reset --soft HEAD^仅撤销本地提交,文件恢复到暂存区 (add)
git reset --mixed HEAD^撤销本地提交,文件恢复到暂存前的状态(上次修改还在)
git reset --hard HEAD^ 撤销本地提交,文件恢复到修改前的状态(修改丢失)

git checkout . 撤销所有已修改但未提交的文件,但不包括新增的文件在这里插入图片描述
在git bash 中输入git log

4.3.6远程仓库

什么是远程仓库?
远程仓库是指托管在网络上的项目仓库,可能会有好多个,其中有些你只能读,另外有些可以写。同他人协作开发某个项目时,需要管理这些远程仓库,以便推送或拉取数据,分享各自的工作进展。

查看当前的远程库git remote 它会列出每个远程库的简短名字。

查看本地分支与远程分支的映射关系:git branch -vv

git pull 其实就是 git fetch 和 git merge FETCH_HEAD 的简写。
格式:git push<远程主机名><远程分支名>:<本地分支名>
git pull origin master:master

向远程仓库推送
git push 从将本地的分支版本上传到远程并合并。
格式:git push <远程主机名><本地分支名>:<远程分支名>

Git分支有什么作用?
1.创建一个分支开发新功能,不影响原来的项目
2.从产品主干拉一个分支给客户做定制开发

新建分支 gitcheckout -b“newBranch”

切换分支 gitcheckoutmaster

合并分支git merge

查看分支 gitbranch

删除分支 git branch -d

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值