转行小白成长路--java基础
每天都会发一篇,一点一滴,记录在这条路上的足迹。立个flag
2019年3月份至今已近一年,对信息技术有个大概的了解,个人认为对于这门技术更应该从最底层的原理入手,了解计算机演化的历史,从计算机语言到汇编语言再到高级语言,应该搞清楚window和linux等系统的原理和思想。眼下没有大把的时间,只能从java入手,自上而下的深入。过年的这段时间发现,计算机技术和自己大学就开始学的机械知识不同,没有完整的知识框架,看的、学的如果不反复用根本记不住,决定采用读书笔记,以xmind脑图的形式,把知识点记录下来,每天更新。
使用了半年的java,对这门语言开始有一点浅显的认知。这半年的工作时间中匆匆读过一遍java编程思想,有些感悟;正巧赶上疫情+离职,趁这段空闲时间整理出笔记,发现这真是一本有意思的书。
- 匆匆感悟:书中似乎只在介绍java都能做什么,怎么做。可是我们关心的重点在如何做到的,期望能从这本书中获取到运行的原理;
- 整理感悟:1.这本书介绍的似乎并不是毫无章法的,从java是什么到它的主要构成条件(封装、继承、多态),再到他们综合起来的进阶用法;2.书中有介绍功能出现的原因(重点),实现的思想(重点)及少量原理。
现在看这是一本不错的好书,前五章整理完成,下面记录下心得:
- 第一章:这是总领全书的思想的概括,也是全书的一个缩略版。从java是什么入手(一门高级抽象语言,最终也是对汇编语言的抽象。通过建立某一类型的对象来解决问题。有五大抽象特征),到对象是什么(与现实问题抽象的一一对应),再到封装思想(权限的边界,不仅是类代码属性的不可见,还有客户端与服务端的权限,以来不同jar包可修改的权限)、继承思想(代码的复用和逻辑及类型的扩展,重点在复用和少量的扩展,接口重点在扩展和少量的复用)和多态思想(为了提高扩展和复用的灵活性,主要用于有上下级关系的类型对象),再到容器的应用(进阶了,往后的复合应用都离不开单根继承,主要用来保存对象和基本数据,原理离不开数据底层数据结构),生命周期(对象的生命周期,与{}有关,用到停止-复制,标记-清扫两种方式结束对象的生命),异常处理(为了快速找到程序出现的问题,离不开自己定义异常提示出现什么错误,它不是面向对象的思想),并发(要理解进程和线程的区别,其实两个名称都是代称,指分配时间和处理器资源,就是名称显得高大上),最后到internet应用(客户端,服务端;主要还是通过TCP协议将数据传输,Socket和nio就像mybitas和JDBC的区别,封装了一个管理器)。
这是一门建立在公认的协议上的技术,只有大家都遵守,才能正常完成信息传输。暂时介绍到这,明天继续。
转行小白成长路--java基础的更多相关文章
- 转行小白成长路-java篇
第五章:初始化与清理 前几章怎么看都没发现有什么逻辑顺序,感觉都是相互独立的,在讲述java语言构成的基本单位和规则.这个先放置一边. java中初始化有两层含义,其一是创建,二是赋值. 其本质也就是 ...
- 《菜鸟程序员成长之路:从技术小白到阿里巴巴Java工程师》
<菜鸟程序员成长之路:从技术小白到阿里巴巴Java工程师> 国庆节快乐!一年一度长度排第二的假期终于来了. 难得有十一长假,作者也想要休息几天啦. 不管你是选择出门玩,还是在公司加班,在学 ...
- 原创电子书《菜鸟程序员成长之路:从技术小白到阿里巴巴Java工程师》
<菜鸟程序员成长之路:从技术小白到阿里巴巴Java工程师> 国庆节快乐!一年一度长度排第二的假期终于来了. 难得有十一长假,作者也想要休息几天啦. 不管你是选择出门玩,还是在公司加班,在学 ...
- linux小白成长之路10————SpringBoot项目部署进阶
[内容指引] war包部署: jar包部署: 基于Docker云部署. 一.war包部署 通过"云开发"平台初始化的SpringBoot项目默认采用jar形式打包,这也是我们推荐的 ...
- 1、Java小白之路前言
大二一年准备好好学习Java,养成一个良好的习惯写博客,但是由于各种各样的原因,并没有坚持下来.而正好又赶上大三结束,去实习,发现自己的基础还是有些薄弱,所以决定,重新走上这条Java小白之路. 时隔 ...
- 1、JAVA的小白之路
大学的时光过得很快,转眼我已经大二了,在大一时,学习了C\C++,对于语言有一定基础,在未来的道路上,我需要攒足干劲,积累足够的知识和技能,去走上社会. 我的第一任大学班主任告诉我:“作为程序员,你至 ...
- 推荐五个java基础学习网站,小白必备
不知道去哪找java基础资料?推荐几个学习网站,小白必备 Java经过20多年的发展,仍然是世界上最受欢迎的编程语言之一,有无限多种方法使用Java.拥有庞大的客户群.并且java应用范围很广,基本只 ...
- JAVA基础学习之路(一)基本概念及运算符
JAVA基础概念: PATH: path属于操作系统的属性,是系统用来搜寻可执行文件的路径 CALSSPATH: java程序解释类文件时加载文件的路径 注释: 单行注释 // 多行注释 /*... ...
- 小白—职场之Java基础篇
java基础篇 java基础 目录 1.java是一种什么语言,jdk,jre,jvm三者的区别 2.java 1.5之后的三大版本 3.java跨平台及其原理 4.java 语言的特点 5.什么是字 ...
随机推荐
- 简单说说常用的css选择器
这里先来一段HTML代码 <div id="div" class="div"> <p class="div_P1"> ...
- 回炉重造之重读Windows核心编程-006-线程
线程也是有两部分组成的: 线程的内核对象,操作系统用来管理线程和统计线程信息的地方. 线程堆栈,用于维护现场在执行代码的时候用到的所有函数参数和局部变量. 进程是线程的容器,如果进程中有一个以上的线程 ...
- 高精度模板 支持各种运算 c++
绪言 自从有了高精度模板,妈妈再也不用怕我不会打高精度了! 代码 代码长度与日俱增啊~~~ #include<iostream> #include<cstring> #incl ...
- 处理方法返回ModelAndView类型
1.请求 <a href="test">测试</a> 2.处理方法 @RequestMapping("/test") public Mo ...
- Vue(八)---组件(Component)
组件(Component)是 Vue.js 最强大的功能之一.组件可以扩展 HTML 元素,封装可重用的代码. 注册一个全局组件语法格式如下: Vue.component(tagName, optio ...
- EasyUI笔记(五)表单
本系列只列出一些常用的属性.事件或方法,具体完整知识请查看API文档 Form(表单) 创建一个简单的HTML表单.构建一个包含id.action和method值的表单元素. <form id= ...
- Wannafly Winter Camp 2020 Day 7D 方阵的行列式 - 数学
于是去弄了个板子来 #include <bits/stdc++.h> using namespace std; #define int long long const int mod = ...
- Certificate Request Processor: Invalid provider specified. 0x80090013 (-2146893805 NTE_BAD_PROVIDER)
通过INF文件创建CSR时遇到Certificate Request Processor: Invalid provider specified. 0x80090013 (-2146893805 NT ...
- 一维数组、二维数组——Java
一. 一维数组 1. 数组是相同类型数据的有序集合 相同类型的若干个数据,按照一定先后次序排列组合而成 每个数组元素可以通过一个下标来访问它们 其中,每一个数据称作一个数组元素 2. 数组特点: 其 ...
- BIOS和DOS中断大全
DOS中断: 1.字符功能调用类(Character-Oriented Function)01H.07H和08H —从标准输入设备输入字符02H —字符输出03H —辅助设备的输入04H —辅助设备的 ...