java入门(p1)进入java的世界

简介: 浅谈java世界(连载中P1) Java是一门语言,它并不是很难理解的东西,语言是来进行交流的工具,那么它用来跟谁来交互呢,所有的语言都有与其交流的对象,中文也好英文也罢,交流基本的对象应该有人对吧,那java呢?思考一下,当然是人与计算机了对吧,对,也就是电脑,那么问题来了(狄仁杰),人类在用语.

浅谈java世界(连载中P1)

  • Java是一门语言,它并不是很难理解的东西,语言是来进行交流的工具,那么它用来跟谁来交互呢,所有的语言都有与其交流的对象,中文也好英文也罢,交流基本的对象应该有人对吧,那java呢?思考一下,当然是人与计算机了对吧,对,也就是电脑,那么问题来了(狄仁杰),人类在用语言沟通的时候,你看到了他们在交流,在沟通,你一句我一句的问答,双方的大脑都在解析着不同语言的含义,然后反映出要回答的话语.
  • 那么java作为人与计算机交流的语言,人们写了一大堆代码扔给计算机,计算机也要去理解,计算机也需要一个理解java的大脑吧,这里引申一个新的名词(虚拟机JVM),虚拟机也就是理解java的大脑,它的作用是什么呢?想一想!
  • 给一个小情景,一个来自印度的阿三大叔在撩来自四川的辣妹,毫无疑问的说两人都是有大脑的,如果没有那太可怕了,你觉得他会成功吗?起码我觉得语言不通是无法成功撩到小妹妹的,这个时候我们需要一个什么呢?翻译器对吧!我们要显得专业一些,这里引申一个新的名词(编译器),编译器的作用是什么呢?想一想!
    相信小伙伴们已经大概理解java运行的原理了吧~我们写好了源代码,交给编译器翻译,将翻译好的东西交给虚拟机(JVM)运行就好了,红字部分是不是看起来特别不专业,翻译好的东西=字节码,字节码是虚拟机可以看懂的内容,那么问题来了,字节码是给谁看的呢?想一想!
  • 我们来捋一捋java真正的java运行方式:
    **

源代码→编译器→字节码→java虚拟机(JVM)

**
**注:**
  1. 虚拟机的好处是它存在于你的机器中,你不需要去买一台java的机器,只要能用虚拟机就行了。
  2. Java具有代表性的联合创始人是一个加拿大的软件工作者:James Gosling(詹姆斯高斯林)
  3. Java毕竟是老外发明出来的语言,英文单词很多,前期不要懵,多看看来来回回就那么点儿词汇,记住就行了,一点儿也不难。
  4. 关于java版本的问题就先不谈了,他们搞营销的脑子里都不知道在搞些什么,只要你不是用的远古版本,都可以满足你的初学需求。
    问:源代码谁来写?谁来编译源代码?编译之后源代码变成了什么?谁去运行呢?

答:
源代码由人类书写;
编译器来编译源代码;
在没有错误的情况下javac程序会将.java的文件编译成.class(它是由字节码组成的);
字节码组成的.class文件会交给JVM(java虚拟机)去运行。image001

**
一直很想做的事情开个头,欢迎指正。**

相关文章
|
23天前
|
存储 安全 Java
从入门到精通:Java Map全攻略,一篇文章就够了!
【10月更文挑战第17天】本文详细介绍了Java编程中Map的使用,涵盖Map的基本概念、创建、访问与修改、遍历方法、常用实现类(如HashMap、TreeMap、LinkedHashMap)及其特点,以及Map在多线程环境下的并发处理和性能优化技巧,适合初学者和进阶者学习。
36 3
|
2天前
|
监控 安全 Java
Java中的多线程编程:从入门到实践####
本文将深入浅出地探讨Java多线程编程的核心概念、应用场景及实践技巧。不同于传统的摘要形式,本文将以一个简短的代码示例作为开篇,直接展示多线程的魅力,随后再详细解析其背后的原理与实现方式,旨在帮助读者快速理解并掌握Java多线程编程的基本技能。 ```java // 简单的多线程示例:创建两个线程,分别打印不同的消息 public class SimpleMultithreading { public static void main(String[] args) { Thread thread1 = new Thread(() -> System.out.prin
|
8天前
|
Java 大数据 API
14天Java基础学习——第1天:Java入门和环境搭建
本文介绍了Java的基础知识,包括Java的简介、历史和应用领域。详细讲解了如何安装JDK并配置环境变量,以及如何使用IntelliJ IDEA创建和运行Java项目。通过示例代码“HelloWorld.java”,展示了从编写到运行的全过程。适合初学者快速入门Java编程。
|
14天前
|
存储 安全 Java
🌟Java零基础-反序列化:从入门到精通
【10月更文挑战第21天】本文收录于「滚雪球学Java」专栏,专业攻坚指数级提升,希望能够助你一臂之力,帮你早日登顶实现财富自由🚀;同时,欢迎大家关注&&收藏&&订阅!持续更新中,up!up!up!!
49 5
|
12天前
|
安全 Java 调度
Java中的多线程编程入门
【10月更文挑战第29天】在Java的世界中,多线程就像是一场精心编排的交响乐。每个线程都是乐团中的一个乐手,他们各自演奏着自己的部分,却又和谐地共同完成整场演出。本文将带你走进Java多线程的世界,让你从零基础到能够编写基本的多线程程序。
26 1
|
18天前
|
Java 数据处理 开发者
Java多线程编程的艺术:从入门到精通####
【10月更文挑战第21天】 本文将深入探讨Java多线程编程的核心概念,通过生动实例和实用技巧,引导读者从基础认知迈向高效并发编程的殿堂。我们将一起揭开线程管理的神秘面纱,掌握同步机制的精髓,并学习如何在实际项目中灵活运用这些知识,以提升应用性能与响应速度。 ####
41 3
|
20天前
|
Java
Java中的多线程编程:从入门到精通
本文将带你深入了解Java中的多线程编程。我们将从基础概念开始,逐步深入探讨线程的创建、启动、同步和通信等关键知识点。通过阅读本文,你将能够掌握Java多线程编程的基本技能,为进一步学习和应用打下坚实的基础。
|
21天前
|
存储 安全 Java
从入门到精通:Java Map全攻略,一篇文章就够了!
【10月更文挑战第19天】本文介绍了Java编程中重要的数据结构——Map,通过问答形式讲解了Map的基本概念、创建、访问与修改、遍历方法、常用实现类(如HashMap、TreeMap、LinkedHashMap)及其特点,以及Map在多线程环境下的使用和性能优化技巧,适合初学者和进阶者学习。
39 4
|
1月前
|
开发框架 IDE Java
java制作游戏,如何使用libgdx,入门级别教学
本文是一篇入门级教程,介绍了如何使用libgdx游戏开发框架创建一个简单的游戏项目,包括访问libgdx官网、设置项目、下载项目生成工具,并在IDE中运行生成的项目。
46 1
java制作游戏,如何使用libgdx,入门级别教学
|
20天前
|
Java
[Java]Socket套接字(网络编程入门)
本文介绍了基于Java Socket实现的一对一和多对多聊天模式。一对一模式通过Server和Client类实现简单的消息收发;多对多模式则通过Server类维护客户端集合,并使用多线程实现实时消息广播。文章旨在帮助读者理解Socket的基本原理和应用。
16 1