小编nme*_*eln的帖子

Java中的每个构造函数是否隐式调用Object的构造函数?

我知道如果类没有扩展任何其他类,那么它会隐式扩展Object类.

这是否意味着当我调用我的类构造函数时,Object也会调用基类的构造函数?

难道Object甚至有一个构造函数?

java constructor class

8
推荐指数
1
解决办法
1257
查看次数

在C中访问variadic函数'参数而不使用va_list

是否有可能使用指针(void指针?)迭代可变参数函数'参数到最后命名的参数?(我知道这不是使用可变参数的正确方法,但我仍然感兴趣,如果这可行)

设置指向字符串末尾的指针不起作用,因为在我开始移动指针后,它指向程序中使用的其他字符串.

#include <stdio.h>
#include <string.h>
#include <stdlib.h>

void form_date(MON* datePtr, int dayMonth, int dayYear, int month);
MON* evaluate_date(MON* datePtr, int count, int dayArg);
void what_month(char *format, ...);
void output(MON* datePtr, int count);

int main(void)
{ 
what_month("ii", 126, 125);
return 0;
}

void what_month(char *format, ...){

    char* arg_ptr = format+2;
    int* arg_int_ptr;
    double* arg_double_ptr;

    MON dateArr[MAX_DATE];
    int count = 0;
    int dayYear;
    char *ptrFormat = format;

    for(; *ptrFormat != '\0'; ptrFormat++){
        if(*ptrFormat == 'i'){
            arg_int_ptr = (int*) arg_ptr;
            dayYear = …
Run Code Online (Sandbox Code Playgroud)

c pointers variadic-functions

6
推荐指数
2
解决办法
1517
查看次数

返回私有List(在类中)的迭代器被认为是不好的做法?

假设我有两个类:Animal和Zoo,它有包含Animal实例的私有List.

我想要返回迭代器的原因是为了避免定义setter和getter以及删除方法.

这会破坏封装吗?

class Zoo{
    private List<Animal> animalList;
    public Zoo(){
        animalList = new ArrayList<Animal>();
    }
    public void addAnimal(Animal animal){
        animalList.add(animal);
    }
    public Iterator<Animal> iterator(){
        return animalList.iterator();
    }
}

class Animal{
    private String name;
    private double weight, height;

    Animal(String name, double weight, double height){
        this.name = name;
        this.weight = weight;
        this.height = height;
    }
}
Run Code Online (Sandbox Code Playgroud)

java oop iterator

5
推荐指数
1
解决办法
753
查看次数

标签 统计

java ×2

c ×1

class ×1

constructor ×1

iterator ×1

oop ×1

pointers ×1

variadic-functions ×1