#include"stdio.h"
int i =0;
int fun(int n)
{
static int a = 2;
//第一次执行到这里时a为2,第二次执行到这里时a为3
a++;
return a + n;
}
void main()
{
int k = 5;
{
int i = 2;
k += fun(i);//fun(2)=5
//k = 10;
}
k += fun(i);//fun(0)=4
//k=14
printf("%d\n", k);
}
#include"stdio.h"
void main()
{
printf("%d\n",5%-3);//2
printf("%d\n",-5%3);//-2
}
But why??
求余两边必须是整数,余数符号和被除数一样
#include"stdio.h"
void main()
{
int x=3,y=-1,z=1;
if(x=y+z)
{
printf("######\n");
}
else//只有x=0时才输出这个
{
printf("******\n");
}
}
#include"stdio.h"
#include"string.h"
void main()
{
char p1[7]="abc";
char p2[]="ABC";
char str[50]="xyz";
strcpy(str,strcat(p1,p2));
printf("%s\n",str);//abcABC
}
下列属于操作系统基本组成部分的有(ABCD) (进程管理属于处理器管理)
A.处理器管理
B.存储管理
C.文件管理
D.设备管理
chmod命令,用于改变文件或目录的访问权限。用户用它控制文件或目录的访问权限。
chgrp命令功能:改变文件或目录所属的组。
chown 命令功能:更改某个文件或目录的属主和属组。这个命令也很常用。例如root用户把自己的一个文件拷贝给用户xu,为了让用户xu能够存取这个文件,root用户应该把这个文件的属主设为xu,否则,用户xu无法存取这个文件。
在 myjsp.jsp 中,关于下面的代码说法错误的是: ( )
<%@ page language="java" import="java.util.*" errorPage="error.jsp" isErrorPage="false" %>
该页面可以使用 exception 对象
该页面发生异常会转向 error.jsp
存在 errorPage 属性时,isErrorPage 是必须的属性值且一定为 false
error.jsp 页面一定要有isErrorPage 属性且值为 true
下面有关java的一些细节问题,描述错误的是?
构造方法不需要同步化
一个子类不可以覆盖掉父类的同步方法
定义在接口中的方法默认是public的
容器保存的是对象的引用
下面有关List接口、Set接口和Map接口的描述,错误的是?
他们都继承自Collection接口
List是有序的Collection,使用此接口能够精确的控制每个元素插入的位置
Set是一种不包含重复的元素的Collection
Map提供key到value的映射。一个Map中不能包含相同的key,每个key只能映射一个value
http://www.nowcoder.com/questionTerminal/e6f36b3ff4b34fe0a1a37779cb9c5cf7
下面有关spring的依赖注入,说法错误的是?
依赖注入通常有如下两种:设值注入和构造注入:
构造注入可以再构造器中决定依赖关系的注入顺序,优先依赖的优先注入
当设值注入与构造注入同时存在时,先执行构造注入,再执行设值注入
设值注入是指IoC容器使用属性的setter方法来注入被依赖的实例。这种注入方式比较简单、直观
http://www.nowcoder.com/questionTerminal/e6f36b3ff4b34fe0a1a37779cb9c5cf7
HttpServletRequest类主要处理:
1.读取和写入HTTP头标
2.取得和设置cookies
3.取得路径信息
4.标识HTTP会话
从以下哪一个选项中可以获得Servlet的初始化参数?
Servlet
ServletContext 获取web全局参数.ServletContext对象是Web应用的运行时表示,约等于整个web应用;可通过其实现Web应用中的资源共享。
ServletConfig 需要通过重写servlet的init的方法来获取,用于获取当前servlet的参数。
GenericServlet
Java不支持多继承,但是通过一些巧妙的设计来达到和多继承同样的效果
通过接口、内隐类,继承、实现,互相配合,达到多继承的效果
1、Java中一个类不能继承多个具体class。
2、一个类只可继承自一个具体 class,但可实现多个接口。
interface不涉及到实现细节,不与任何存储空间有关连。
可以实现合并多个 interface ,达到可向上转型为多种基类的目的。
新类可继承自一个具象class,其余继承都得是interfaces。
3、outer class不可继承自多个具体 class,可在其内部设多个inner class,每个inner class都能各自继承某一实现类。
inner class不受限于outer class 是否已经继承自某一实现类。
4、inner class可以说是多重继承问题的完整解决方案。
inner class 可 “继承自多个具象或抽象类”。
一个类不能继承自多个一般类。但我们可以让其内部的多个inner class各自继承某一实现类达到类似的目的。
下面关于spring和struts2的描述,错误的是?
spring mvc的入口是filter,而struts2是servlet (反了)
spring mvc是基于方法的设计,而struts2是基于类的设计
struts2有以自己的interceptor机制,spring mvc用的是独立的AOP方式
spring mvc的方法之间基本上独立的,独享request response数据,struts2所有Action变量是共享的
下面有个hibernate延迟加载,说法错误的是?
Hibernate2延迟加载实现:a)实体对象 b)集合(Collection)
Hibernate3 提供了属性的延迟加载功能
get支持延迟加载,load不支持延迟加
hibernate使用Java反射机制,而不是字节码增强程序来实现透明性
load方法来得到一个对象时,此时hibernate会使用延迟加载的机制来加载这个对象,即:当 我们使用session.load()方法来加载一个对象时,此时并不会发出sql语句,当前得到的这个对象其实是一个代理对象,这个代理对象只保存了实 体对象的id值,只有当我们要使用这个对象,得到其它属性时,这个时候才会发出sql语句,从数据库中去查询我们的对象。
相对于load的延迟加载方式,get就直接的多,当我们使用session.get()方法来得到一个对象时,不管我们使不使用这个对象,此时都会发出sql语句去从数据库中查询出来。
下面哪一项不属于优化Hibernate所鼓励的?
使用单向一对多关联,不使用双向一对多
不用一对一,用多对一取代
配置对象缓存,不使用集合缓存
继承类使用显式多态
Hibernate鼓励使用双向一对多关联,不使用单向一对多关联。单向一对多关联映射是在one端维护关系的,必须先保存many端后才可以保存one端,所以在保存many端时该端不知道one端是否存在相应的数据,所以只能将维护的关系字段设置为null,如果为非空则无法保存。因为是one端维护关系,所以在保存one端时,会发出多余的update语句维护many端的外键关系。
在Struts框架中如果要使用Validation作验证的话,需要使用以下哪个Form?
ActionForm
ValidatorActionForm
ValidatorForm
DynaValidatorActionForm
JSP的9个内置对象
pageContext javax.servlet.jsp.PageContext
request javax.servlet.http.HttpServletRequest
response javax.servlet.http.HttpServletResponse
session javax.servlet.http.HttpSession
application javax.servlet.ServletContext
config javax.serlvet.ServletConfig
exception java.lang.Throwable
page java.lang.Object
out javax.servlet.jsp.JspWriter
作用:
1、pageContext 表示页容器 EL表达式、 标签 、上传
2、request 服务器端取得客户端的信息:头信息 、Cookie 、请求参数 ,最大用处在MVC设计模式上
3、response 服务器端回应客户端信息:Cookie、重定向
4、session 表示每一个用户,用于登录验证上
5、application 表示整个服务器
6、config 取得初始化参数,初始化参数在web.xml文件中配置
7、exception 表示的是错误页的处理操作
8、page 如同this一样,代表整个jsp页面自身
9、out 输出 ,但是尽量使用表达式输出
#include"stdio.h"
#include"iostream"
#include"string.h"
#include"conio.h"
using namespace std;
void main()
{
float a = 1.0f;
cout << (int)a << endl;//1
cout << &a << endl;//0018FF44
cout << (int&)a << endl;//1065353216
cout << boolalpha << ((int)a == (int &)a) << endl;//false
float b = 0.0f;
cout << (int)b << endl;//0
cout << &b << endl;//0018FF40
cout << (int&)b << endl;//0
cout << boolalpha << ((int)b == (int &)b) << endl;//true
}
宏定义
#include"stdio.h"
#include"iostream"
#include"string.h"
#include"conio.h"
using namespace std;
#define time (60*60*25*365)
#define min(a,b) (a>b?b:a)
void main()
{
cout << time << endl;//32850000
cout << min(2,5) << endl;//2
}