社区
Java SE
帖子详情
●●●菜鸟初问●●●关于java
slhappyls
2004-04-23 07:36:45
请问:
我一直用c.c++。最近我看了很多java的书,但是我发现里面全是类,类里面有一个static的main不过,c++中都是在外部定义的。虽然static表明对于所有对象都是一个main。但是java为啥不像c++那么在外部定义呢。另外有main的那个类就自己成了一个对象,难道java隐藏了什么咚咚,我知道没有对象只有类怎么行!不理解,请大侠解释
...全文
35
14
打赏
收藏
●●●菜鸟初问●●●关于java
请问: 我一直用c.c++。最近我看了很多java的书,但是我发现里面全是类,类里面有一个static的main不过,c++中都是在外部定义的。虽然static表明对于所有对象都是一个main。但是java为啥不像c++那么在外部定义呢。另外有main的那个类就自己成了一个对象,难道java隐藏了什么咚咚,我知道没有对象只有类怎么行!不理解,请大侠解释
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
14 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
BigBangBug
2004-04-24
打赏
举报
回复
sean_gao(大胃) 说的不错,呵呵
kelvinzy
2004-04-24
打赏
举报
回复
i agree with sean_gao:-)
caiyanying732
2004-04-24
打赏
举报
回复
学习
gift2u
2004-04-24
打赏
举报
回复
我觉得static有点类似于c++中的全局变量.
你觉的呢,楼主.
javafaq2004
2004-04-24
打赏
举报
回复
楼上的应该有两颗星才对。
sean_gao
2004-04-24
打赏
举报
回复
献丑说两句:
任何程序都需要入口点吧,要不然怎么执行?就像C/C++的main函数还有Windows下的WinMain,都是约定的程序入口,要编C/C++程序,需要提供main,要用C编Win32应用,需要写WinMain,同样,要编可执行的Java程序,就需要public static void main(String[] args),这些都是约定,我想没什么好多说的。
Java相较C++而言是一种更"纯"的面向对象的设计语言,语法上更严格,所有东西都是对象,所以main这个入口方法也需要包含在类中。Java中不像C/C++有全局变量,也不像C++中先写类结构,再写实现,可以分开来,Java中类声明和实现是写在一起的,说起来这应该是语言差异。
这个main对于"java"命令而言是必需的,执行"java"命令时,必须让它能够看到main,所以一定是public的;必须让它能够独立于对象实体存在,所以一定是static的。
最后说说我的感觉:Java中main这个方法的执行是过程化的而非对象化的,模拟了程序主线程的运行流程,道理很简单,OOP虽好,但不能代替程序运行的全部,因为程序总需要由启动到终止的过程化流程,而流程开始前是没有对象存在的。
slhappyls
2004-04-24
打赏
举报
回复
哦,还有高见么
wyyzyq
2004-04-23
打赏
举报
回复
我要说的和楼上几个差不多,也就不发表意见了。
panpan221
2004-04-23
打赏
举报
回复
同意楼上
ai92
2004-04-23
打赏
举报
回复
在Java中,万物皆对象,所有的东西 都是封装在类里面的
所以main方法也不例外
main是一个入口方法,程序将从这里执行
ai92
2004-04-23
打赏
举报
回复
在Java中,万物皆对象,所有的东西 都是封装在类里面的
所以main方法也不例外
main是一个入口方法,程序将从这里执行
onefox
2004-04-23
打赏
举报
回复
因为 Java 是纯面向对象的语言,所以作为程序入口的 main()
方法也被封装再一个类里面。
其实 static 本身是违反面向对象规则的,
为了体现某些特殊方法和变量的公开性才有必要使用
lnjasmine
2004-04-23
打赏
举报
回复
java中大部分的类都没有main函数,你看java说明文档中的类都没有定义main函数,大部分的有main函数的类只不过要执行一个application,而一个程序的执行只不过必须从main函数开始执行,static修饰的变量或方法在内存中是公开的,可以用类名直接调用。(我的一点点感悟,不一定说的对啊!)
菜鸟
的成长之路 即
Java
程序员职场全攻略
本书以包罗万象的IT这个大江湖为背景,将
Java
职场中从入门前的学校
菜鸟
到成长为技术大牛的过程展现给读者,内容饱满但又不失趣味性。在本书中既有入职前的行业探秘、误区排除,也有入职后的口诀传授和江湖新锐兵器...
题解 | #直播开始时直播间在线人数#date_format
●
ThreadLocal 如何实现线程隔离的,底层是怎么实现的...#面试##江西科泰华软件有限公司#面试有三轮,分别为笔试、HR面、技术面HR面:1、自我介绍2、为什么离职3、问上一家公司的情况及薪资技术面:1、自我介绍2、项。
Java
设计模式
类之间的关系 创建型模式 导读:面向过程的对象创建 背景: 在当前基于《阿里
Java
开发手册》、POJO、贫血模型、含service层的三层架构与微服务等思想指导的
Java
开发体系下,许多忙于写业务逻辑(biz logic)的程序员...
Mybatis-使用注解开发
8.1、面向接口编程
●
大家之前都学过面向对象编程,也学习过接口,但在真正的开发中,很多时候我们会选择面向接口编程
●
根本原因:解耦,可拓展,...小到不同类之间的通信,大到各模块之间的交互,在系统设计之初都
个性化
Java
Doc注释(为代码增添一份色彩)
作为一名程序员,还是一名刚入门的
菜鸟
,天天看着枯燥无味的代码,偶然间突发奇想,能不能让文档注释变得更漂亮呢,于是就花了一天多的时间自己个性化定义了一遍
java
doc注释,下面是效果生成API的效果图: 软件包 ...
Java SE
62,623
社区成员
307,257
社区内容
发帖
与我相关
我的任务
Java SE
Java 2 Standard Edition
复制链接
扫一扫
分享
社区描述
Java 2 Standard Edition
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章