Java-and是检查自定义用户定义方法的源代码的代码(请参阅程序中的代码)
正在寻找在java程序中显示用户创建的自定义方法的代码的方法。我想查看专门命名的自定义java方法的代码。我不是在寻找查看java中内置的那些标准方法的代码的方法 在R中,很容易看到用户创建的函数的代码,或者查看许多内置函数的代码。只需输入函数名,后面不带括号。例如,从function data.frame显示的部分代码如下所示。java中应该有类似的特性,这似乎是合理的Java-and是检查自定义用户定义方法的源代码的代码(请参阅程序中的代码),java,methods,Java,Methods,正在寻找在java程序中显示用户创建的自定义方法的代码的方法。我想查看专门命名的自定义java方法的代码。我不是在寻找查看java中内置的那些标准方法的代码的方法 在R中,很容易看到用户创建的函数的代码,或者查看许多内置函数的代码。只需输入函数名,后面不带括号。例如,从function data.frame显示的部分代码如下所示。java中应该有类似的特性,这似乎是合理的 data.frame function (..., row.names = NULL, check.rows = FALS
data.frame
function (..., row.names = NULL, check.rows = FALSE, check.names = TRUE,
fix.empty.names = TRUE, stringsAsFactors = default.stringsAsFactors())
{
data.row.names <- if (check.rows && is.null(row.names))
function(current, new, i) {
if (is.character(current))
new <- as.character(new)
if (is.character(new))
current <- as.character(current)
if (anyDuplicated(new))
return(current)
if (is.null(current))
return(new)
if (all(current == new) || all(current == ""))
return(new)
stop(gettextf("mismatch of row names in arguments of 'data.frame', item %d",
i), domain = NA)
}
else function(current, new, i) {
if (is.null(current)) {
if (anyDuplicated(new)) {
warning(gettextf("some row.names duplicated: %s --> row.names NOT used",
paste(which(duplicated(new)), collapse = ",")),
domain = NA)
current
}
else new
}
else current
}
object <- as.list(substitute(list(...)))[-1L]
mirn <- missing(row.names)
mrn <- is.null(row.names)
x <- list(...)
n <- length(x)
if (n < 1L) {
if (!mrn) {
if (is.object(row.names) || !is.integer(row.names))
row.names <- as.character(row.names)
if (anyNA(row.names))
stop("row names contain missing values")
if (anyDuplicated(row.names))
stop(gettextf("duplicate row.names: %s", paste(unique(row.names[duplicated(row.names)]),
collapse = ", ")), domain = NA)
}
else row.names <- integer()
return(structure(list(), names = character(), row.names = row.names,
class = "data.frame"))
}
vnames <- names(x)
etc ...................
data.frame
函数(…,row.names=NULL,check.rows=FALSE,check.names=TRUE,
fix.empty.names=TRUE,stringsAsFactors=default.stringsAsFactors()
{
data.row.names您也可以看到other在Java中制作的函数,但您必须通过源代码来实现。如果您有IDE,则应该具有“显示声明”功能。例如,在IntelliJ中,只需按住ctrl键并单击方法调用,即可显示执行的代码
您在R或例如Python中看到的特性更常见于可以解释的语言。使用Jshell(Java的REPL),您可以直接从REPL中瞥见Java文档,请参见嗯,这对您来说似乎是合理的,但Java中没有这样的特性。源代码在运行时不可用,因为它是在编译步骤中与字节码相关。只有类型名、函数名和字段名等特定内容可以通过反射获得。如果您使用IDE和Maven等依赖关系管理器,您的IDE可以获取源代码并显示它。请记住,与R不同,Java被编译为字节码,因此JAR通常不包含sources。有关运行时可用的信息,请参阅。