1、如何区分静态存储器区和动态存储区?
静态存储方式:是指在程序运行期间分配固定的存储空间的方式。
所谓动态存储方式:是指在程序运行期间根据需要进行动态的分配存储空间的方式。常见的使用方法是指针,对将要寸的数据进行动态内存分配。
2、如何区分局部变量和全局变量?
局部变量:指在程序中,只在特定过程或函数中可以访问的变量,是相对与全局变量而言的。
全局变量:全局变量也称外部变量,是在函数外部定义的,作用域为从变量定义处开始,到本程序文件的末尾。全局变量全部存放在静态存储区,在程序开始执行时给全局变量分配存储区,程序行完毕就释放。
由于Java是面向对象语言,所有变量都是类成员,所以Java只有局部变量,没有全局变量。
3、什么是静态变量?
4、为什么不可以在方法中定义static
通俗点讲静态就是独立于类的实例而存在的方法或属性,所以他是基于类存在的,而非函数(方法)~~
方法之中的变量只是局部变量,并不能被方法之外所识别,所以并不能使用public,static,private,protected...之内的修饰符。
静态方法可以使用直接引用类的其他静态成员(包括变量和方法),但不能直接使用非静态成员。
5、如何理解静态全局变量和静态局部变量
静态局部变量定义
在局部变量的说明前再加上static说明符就构成静态局部变量。 例如: static int a,b; static float array[5]={1,2,3,4,5};静态全局变量定义
6、在Java中setter和getter的作用是什么?
在java中经常是声明一个私有的变量,然后给出他们的公共的getter和setter方法。比如:
private String name; public String getName(){ return name; } public void setName(String name){ this.name = name; }请问:这样做的好处是什么?为什么要定义getter和setter呢。直接public String name;这样不是省去很多麻烦吗?定义为private 是为了实现数据的隐藏和封装; 而set get 方法提供了类与外部的接口; 在大型软件中这是很有必要的,它有利于代码的维护 举个例子, 一个父类有多个子类(甚至还有间接子类),程序代码中,子类是不能直接访问父类的private属性的;这时提供的set get方法是很有必要的 诚然,若将父类的属性声明为protected,在子类中就可以直接访问了,但是这种方法破坏了数据的隐藏和封装原则,关键是不利于代码的维护,如果父类中的一个属性改名了,那么在子类中用到该属性名的代码,要发生大范围的修改,而前面的private,set,get方法就比较好,对代码只需小范围的修改,一般都是这么用的,这是一个良好的编程习惯
7、区分实际参数和形式参数
MVC是三个单词的缩写,分别为: 模型(Model),视图(View)和控制Controller)。 MVC模式的目的就是实现Web系统的职能分工。 Model层实现系统中的业务逻辑,通常可以用JavaBean或EJB来实现。 View层用于与用户的交互,通常用JSP来实现。 Controller层是Model与View之间沟通的桥梁,它可以分派用户的请求并选择恰当的视图以用于显示,同时它也可以解释用户的输入并将它们映射为模型层可执行的操作。
Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。 Hibernate可以应用在任何使用JDBC的场合,既可以在Java的客户端程序使用,也可以在Servlet/JSP的Web应用中使用,最具革命意义的是,Hibernate可以在应用EJB的J2EE架构中取代CMP,完成数据持久化的重任。